一、什么是BroadcastReceiver
在组件之间传播数据的一种机制,这些组件可以位于不同的进程中,起到进程间通信的作用
二、BroadcastReceiver的用法
首先,需要定义一个类,继承BroadcastReceiver,复写onRecevie方法,当接收到广播后在此做响应处理;
然后,对广播进行注册,注册方式有两种,动态注册和静态注册;
▲ 动态注册的广播接收器一定要在onDestroy方法中调unregisterReceiver(recevier)注销
▲ 静态注册的步骤:
1、在AndroidMainFest中的application标签下加上receiver的子标签;
2、与通过name属性指定注册一个广播类,也就是我们刚才定义的那个广播类;
3、另还有enabled与exported属性,enabled代表是否启用这个广播接收器,exported属性表示是否允许这个广播接收器接受本程序以外的广播
4、之后在receiver标签下加上intent-filter标签,设置其action
动态注册:广播跟随程序的生命周期
TestBroadcastReceiver broadcastReceiver = new TestBroadcastReceiver();
IntentFilter intentFilter = new IntentFilter();
intentFilter.addAction(Intent.ACTION_SCREEN_ON);
registerReceiver(broadcastReceiver, intentFilter);
静态注册:程序关闭时来广播信息会被系统调用自动运行
<receiver android:name=".receiver.TestBroadcastReceiver"
android:enabled="true"
android:exported="true">
<intent-filter>
<action android:name="android.intent.action.BOOT_COMPLETED"/>
</intent-filter>
</receiver>
三、常用的Action
四、应用实例(后续添加)