1. BroadcastReceiver的含义
这种组件实质上就是一种全局的监听器,用于监听系统全局广播,正因为如此,它可以非常便利地实现系统中不同组件间的通信。
2. 启动BroadcastReceiver的步骤1) 创建需要启动的BroadcastReceiver的intent;
2) 调用Context的SendBroadcast()或SendOrderedBroadcast()方法来启动指定的BroadcastReceiver。
3. 与OnXxxListener的不同之处
1)OnXxxListener:程序级别的监听器,这些监听器运行于指定程序所在进程,程序退出则监听关闭;
2)BroadcastReceiver:系统级别监听器,拥有自己的进程,只要存在与之匹配的Intent被广播出来,BroadcastReceiver总会被激发。
4. 实现BroadcastReceiver的方法
重写BroadcastReceiver的onReceive(Context context,Intent intent)一旦实现了BroadcastReceiver,接下来应该指定该BroadcastReceiver能匹配的Intent。两种方式:
1)使用代码进行指定,调用BroadcastReceiver的Context的registerReceiver()方法指定;
2)在AndroidManifest.xml文件中配置
<receiver
android:name="com.android.Launcher3.WallpaperChangedReceiver">
<intent-filter
action:android:name="android.intent.action.WALLPAPERCHANGED"/>
</intent-filter>
</receiver>