无序广播与有序广播的区别:
无序广播 | 广播只要发出去,只要设置了对应的action,所有receiver都可以接收到! 【发送广播使用:sendBroadcast()即可】 |
---|---|
有序广播 | 一级级向下发送,通过receiver的级别开判断发送的顺序 【发送广播需要使用:sendOrderBroadcast()】 |
—————————————————————————————————
有序广播的三个特点:
1、优先级越高的越早接收到广播
2、可以终止向下传发送广播
3、可以中途修改广播内容
!!!Android版本8.0后需要通过动态注册的方式来实现有序广播,如果版本在8.0之上请不要用静态注册的方式来实现有序广播!!!
本文将逐一对有序广播的每个特点进行叙述:
前期准备工作:
1、设置button的点击事件,即点击button时发送发送有序广播
2、写button的onclick方法
(设置广播,此处的action为自定义的广播,自定义广播相关内容:link.)
(发送广播:使用sendOrderBroadcast方法)
1、优先级越高越早接收到广播(setPriority()实现)
1.1 写三个不同级别的receiver并注册广播,用来展示有序广播的发送优先级!
此处特别注意!!!!Android版本8.0后需要通过动态注册的方式来实现有序广播
动态注册的步骤:(详见:link.)
1、创建一个intentfilter
2、设置a