有序广播:
广播发送后同一时间只有一个广播接收器能收到,第一个接收器处理完之后才能继续被下一个接收器接收到,每一个接收器都可以将这段广播截断不再继续流传
跟标准关闭比起来,区别只有一点,只需要修改发送广播的方法即可
sendOrderedBroadcast(intent,null);
第二个参数是指定接收者必须拥有的接收权限,如果设为NUll,就是不需要接收权限,所有匹配的Receiver都能接收到
同时有序广播可以设置优先级,优先级越高的越早能接收到广播
如果是静态注册则在intent-filter中加入参数
android:priority="10"
动态注册则设置
intentFilter.setPriority(100);
值为整数,数字越大优先级越高
如果在广播接收器中调用了
abortBroadcast();
方法,则这个广播被截断不会再被其他接收器接收到
标准广播:
广播发出后所有的广播接收器几乎均可同时接收,没有顺序并且无法被截断