一子类创建
使用BroadcastReceiver的子类,重写onReceive(Context context, Intent intent)方法
二注册广播
代码方式:
IntentFilterfilter = new IntentFilter((Stringaction);
Context的 registerReceiver(BroadcastReceiver子类对象,filter);
解除注册Context unregisterReceiver(BroadcastReceiver子类对象);
配置文件方式
优先级范围-1000~~1000 越大权限越高
<receiver android:name=".className">
<intent-filter android:priority="优先级">
<action android:name="user-defined"/>
</intent-filter>
</receiver>
三触发广播
Intent对象设置setAction(Stringaction);
sendBroadcast(intent)触发action对应的BroadcastReceiver,执行里面的onReceive方法
sendOrderedBroadcast(intent,receiverPermission);发送有序广播,第二个参数可为空
BroadcastReceiver的onReceive方法需在10s内完成,所以不能有耗时操作,建议Service,开线程不太好
onReceive(Context context, Intent intent)的intent可以存取数据
监听系统Broadcast Action道理相似