![Android程序员面试笔试宝典](https://wfqqreader-1252317822.image.myqcloud.com/cover/682/39130682/b_39130682.jpg)
上QQ阅读APP看书,第一时间看更新
1.3.3 发送广播
1)发送普通广播:
![](https://epubservercos.yuewen.com/FCD2F4/20516007501589706/epubprivate/OEBPS/Images/39_02.jpg?sign=1739647348-t5XYkdmqKaQbYkQKhnbIFGc7hKqfd8xF-0-6c9092666a6204a6c93d6906880c959f)
如上所示,通过定义intent的action来区分每条广播,然后可以给自定义的广播接收器设置能匹配的action,当广播一发出去,就能进行匹配从而实现接收广播。
2)发送有序广播:
![](https://epubservercos.yuewen.com/FCD2F4/20516007501589706/epubprivate/OEBPS/Images/39_03.jpg?sign=1739647348-S7UBtVym1W2LrbwQwZst2ucqqDRsOyyu-0-c3a05d0e6d7abf9a59c23d25f6f6d577)
如上,调用sendOrderedBroadcast()发送有序广播。
然后在注册的广播接收器<intent-filter>里添加属性android:priority=“数字”设置优先级,这样就算有多个广播接收器设置的action都是一样的,而如果设置的优先级不一样,会按照优先级来接收该有序广播。
而当要拦截该广播的时候,可以在接收器里调用abortBroadcast()方法进行拦截。
3)发送本地广播:
![](https://epubservercos.yuewen.com/FCD2F4/20516007501589706/epubprivate/OEBPS/Images/39_04.jpg?sign=1739647348-P2iEdufZY3eXJ8EbQ74TlFtE9bg4wU7F-0-d98bf48718cf6f87ca53fa5b4e161e9a)
如上所示,基本跟普通广播与有序广播的发送步骤差不多。只不过是通过LocalBroadcast Manager来发送、注册与注销。