Android 广播的基本概念

一.广播简介

Broadcast是安卓四大组件之一。安卓为了方便进行系统级别的消息通知,引入了一套广播消息机制。打个比方,记得原来在上课的时候,每个班级的教室里都会装有一个喇叭,这些喇叭都是接入到学校的广播室的,一旦有什么重要通知,如上课铃下课铃,学校就会播放一条广播来告知全校的师生。这是一个非常形象容易理解的句子,很好的解释了Broadcast大概的意思,不过,Android中的广播机制更加灵活。

为什么会说Android中的广播机制更加灵活呢?这是因为Android中的每个应用程序都可以对自己感兴趣的广播进行注册,这样该程序就只会接收到自己所关心的广播内容,这些广播可能来自于系统,也可能是来自于其他应用程序的。Android提供了一套完整的API,允许应用程序自由的发送和接收广播。接下来就先详细解释广播接收器。

二.广播的使用场景

  • 同一app内部的同一组件(Component)内的消息通信(单个或多个线程之间)
  • 同一app内部的不同组件之间的消息通信(单个进程)
  • 同一app具有多个进程的不同组件之间的消息通信
  • 不同app之间的组件之间消息通信
  • Android系统在特定情况下与App之间的消息通信

三.常见的系统广播

四.广播分为两大类

1.标准广播(Normal broadcasts)

是一种完全异步执行的广播,在广播发出之后,所有的广播接收器几乎都会在同一时刻接受到这条广播消息,因此它们之间没有任何先后顺序可言,这种广播的效率会比较高,但同时也意味着它是无法被拦截的。

2.有序广播(Ordered broadcasts)

是一种同步执行的广播,在广播发出之后,同一时刻只会有一个广播接收器能够收到这条广播消

息,当这个广播接收器中的逻辑执行完毕后,广播才会继续传递。所以此时的广播接受器是有先后

顺序的,优先级高的广播接收器就可以先收到广播消息,并且前面的广播接收器还可以截断正在传

递的广播,这样后面的广播接收器就无法收到广播消息了。

五.广播的使用

待更新。。。

相关推荐
2501_9159214322 分钟前
混合开发应用安全方案,在多技术栈融合下构建可持续、可回滚的保护体系
android·安全·ios·小程序·uni-app·iphone·webview
AllBlue44 分钟前
unity嵌入安卓界面,如何显示状态
android·unity·游戏引擎
QuantumLeap丶1 小时前
《Flutter全栈开发实战指南:从零到高级》- 21 -响应式设计与适配
android·javascript·flutter·ios·前端框架
用户69371750013842 小时前
24.Kotlin 继承:调用超类实现 (super)
android·后端·kotlin
00后程序员张2 小时前
Fastlane 结合 开心上架,构建跨平台可发布的 iOS 自动化流水线实践
android·运维·ios·小程序·uni-app·自动化·iphone
游戏开发爱好者82 小时前
iOS 性能测试的工程化方法,构建从底层诊断到真机监控的多工具测试体系
android·ios·小程序·https·uni-app·iphone·webview
帅得不敢出门2 小时前
Android11~13 Framework实现Ntp服务器多域名轮询同步时间
android·服务器·python·framework·github
2501_916008893 小时前
iOS App 混淆的真实世界指南,从构建到成品 IPA 的安全链路重塑
android·安全·ios·小程序·uni-app·cocoa·iphone
百锦再3 小时前
.NET到Java的终极迁移指南:最快转型路线图
android·java·开发语言·python·rust·go·.net