发送自定义广播
广播分类:标准广播、有序广播
标准广播:所有程序都可以同时接收到(完全异步执行)
有序广播:优先级高的程序先接收到广播,而且可以截断正在传递的广播,这样后面的程序无法接收到。(同步执行)
一:发送标准广播
//构建Intent对象,把要发送的值传入
Intent intent=new Intent("com.example.HJJia");
sendBroadcast(intent);
二:发送有序广播
Intent intent=new Intent("com.example.HJJia");
//第一个参数是intent,第二个参数是与权限相关的参数
sendOrderedBroadcast(intent,null);
截断有序广播:在onReceive()添加截断逻辑
public void onReceive(Context context, Intent intent) {
//将广播截断,后面的广播接收器无法接收到该广播
abortBroadcast();
}
关于广播接收器的优先级:
在注册广播接收器的时候,就设定了。在AndroidManifest.xml中的<recevice><recevice>标签中添加广播接收器的优先级声明就好,android:priority="优先级数字";
<receiver >
<intent-filter android:priority="100">
</intent-filter>
</receiver>
此致
敬礼