`
zhanhao
  • 浏览: 286983 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

android广播接受者

阅读更多

Intent对象除了应用于Activity之间的通信外,还可以用于Broadcast,与Activity类似,广播有系统广播,也可以自定义广播,

可以实现很多效果(短信广播,开机广播,电量广播等)

1.接收系统广播

   流程:分为两步

     (1) 编写一个类继承自 android.content.BroadcastReceiver 并实现onReceive()方法(接收到广播是会调用这个方法)

      (2)在AndroidManifest.xml文件中的<application>节点下注册广播接收者(receiver节点):

        使用<receiver>标签指定要接收哪一个广播和注册你编写的接收广播的类

         eg:接收开机启动广播

         编写类

public class MyReceiver extends BroadcastReceiver
{

 @Override
 public void onReceive(Context context, Intent intent)
 {
  Intent mainIntent = new Intent(context, Main.class);
  mainIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
  context.startActivity(mainIntent);
  Log.d("info","第一个运行的应用");
 }

}

     在AndroidManifest.xml 中注册

<receiver android:name="MyReceiver">
   <intent-filter>
   <!-- 指定要接收的广播 -->
    <action android:name="android.intent.action.BOOT_COMPLETED" />
    <!-- 指定接收的Action广播的种类,该种类表示系统启动后第一个运行的应用 -->
    <category android:name="android.intent.category.HOME" />
   </intent-filter>
   
  </receiver>

 

2.在自己的应用中发送广播

发送广播也要依赖Intent

流程:创建Intent实例,指定发送广播的Action ,通过Activity实例的sendBroadcast();方法发送广播,

只要是在AndroidManifest.xml中注册的广播接收者并且<action>节点的内容与创建Intent时的Action相同就会接收到广播调用onReceive()方法

eg:

Intent inent = new Intent("com.myreceiver");

sendBroadcast(intent);

当然你也可以传参数 与activity传参类似

然后由 onReceive(Context context,Intent intent);方法得到参数

 

1
1
分享到:
评论

相关推荐

    广播接受者的小例子

    这个“广播接受者的小例子”是一个用于教学或展示目的的Demo,适用于那些想要了解或学习如何在Android应用中使用广播接收者的开发者。 在Android应用开发中,广播接收者通常用于处理系统级事件,如设备开机、网络...

    关于 android四大组件之一广播接受者

    android四大组件之一广播接受者用法介绍,广播接受者的基本用法和使用过程中应该注意的地方

    广播接受者

    广播接收者(BroadcastReceiver)是Android系统中的一个重要组件,它用于接收系统或应用程序发送的广播意图(Intent)。在Android中,广播是一种全局的通知机制,可以让一个应用组件向其他组件或者整个系统发布消息...

    广播接受者demo

    "广播接受者demo"是一个用于教学目的的应用程序示例,它展示了如何创建和使用广播接收者。 广播接收者的基本概念: 1. **注册**:广播接收者有两种注册方式:静态注册和动态注册。静态注册在AndroidManifest.xml...

    android有序广播的应用

    有序广播(Ordered Broadcast)是Android广播机制的一种类型,它确保了广播接收者按照特定的顺序接收和处理广播意图(Intent)。在这个实验中,我们将深入探讨有序广播的工作原理、应用场景以及如何实现。 有序广播...

    广播接受者(Broadcast Receiver)

    广播接收者(Broadcast Receiver)是Android系统中的一个重要组件,它允许应用程序在后台接收并响应系统或应用程序广播事件。广播事件可以是系统级别的,如设备启动、网络状态改变,也可以是应用自定义的,用于在...

    广播接收者-2

    广播接收者是Android系统中的一种重要组件,它允许应用程序在后台接收并响应系统或其它应用发出的广播消息。本篇文章将深入探讨广播接收者的基本概念、注册方式、以及三种不同类型的广播:普通广播、有序广播和本地...

    广播接受者注册1

    广播接收者(Broadcast Receiver)是Android系统中四大组件之一,它负责监听并响应系统或应用程序发出的各种广播事件。在Android应用开发中,Broadcast Receiver扮演着重要角色,允许开发者在不同组件间传递信息,...

    072集-静态和动态注册广播接收者

    在Android开发中,广播接收者(Broadcast Receiver)是一种重要的组件,它允许应用程序监听并响应系统或自定义广播事件。本视频教程“072集-静态和动态注册广播接收者”深入探讨了这两种不同的注册方式及其应用场景...

    Android BroadcastReceiver实例Demo(有序广播的发送)

    有序广播的特殊之处在于,当广播发送出去后,系统会按照接收者在清单文件中声明的`android:priority`属性值(范围是-2147483648到2147483647,数值越大优先级越高)依次进行传递。每个接收者有足够的时间处理广播,...

    android电台发送自定义的广播

    而"电台发送自定义的广播"和"自定义广播接受者"这两个文件很显然与我们的主题直接相关,它们可能是示例代码,用于演示如何创建和接收自定义广播。 通过分析和实践这些示例代码,开发者可以更深入地理解Android...

    android 广播

    广播接收者(BroadcastReceiver)分为广播发送者(发送广播的组件)和广播接受者(接收广播的组件)。广播机制是基于观察者模式,这种模式实现了发布/订阅事件模型,从而实现了广播发送者和接收者之间的解耦,有利于...

    接收广播的最高优先级

    @SuppressLint("NewApi") public class MainActivity extends Activity { SmsReceiver myReceiver; Button btn; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate...

    adb发送广播

    在Android开发中,广播(Broadcast)是一种非常重要的组件,它允许应用程序之间进行异步通信,即使它们在后台运行。`adb`(Android Debug Bridge)是Android开发者常用的工具,用于调试和控制连接到计算机的Android...

    BroadcastReceiver广播接收器演示demo

    7. **有序广播与无序广播**: 有序广播(Ordered Broadcast)按照接收者注册的顺序依次执行`onReceive()`方法,可以拦截并修改广播数据。无序广播(Broadcast)则是并行执行,无法拦截和修改广播数据。 通过...

    android Wifi状态监听管理公共类

    Register()方法可以注册一个监听wifi状态的广播接受者,需要用户传入一个实现抽象类的对象实现回调方法,包括监听Wifi打开和关闭,是否通过wifi连接到网络,是否连接到网络等;广播接受者接收到相应的wifi以及网络...

    Android系统中的广播Broadcast,Receiver例子

    Android系统中的广播Broadcast,Receiver例子,可以用LogCat察看整个运行的生命周期.MainActivity界面上有两个按钮,分别是Start Counter和Stop Counter按钮,点击前者开始计数,而点击后者则停止计数。

    Android如何实现接收和发送短信

    每一部手机都具有短信接收和发送功能,下面我们通过代码来实现接收和发送短信功能。  一、接收短信 1、创建内部广播接收器类,...RelativeLayout xmlns:android=http://schemas.android.com/apk/res/android androi

    利用广播获取手机 实时电量信息

    在Android系统中,开发者可以通过BroadcastReceiver来监听和响应系统广播事件,其中包括获取手机的实时电量信息。BroadcastReceiver是Android四大组件之一,它允许应用程序在不运行的情况下接收和处理系统或应用广播...

Global site tag (gtag.js) - Google Analytics