一、广播
1.广播定义
Broadcast Receiver是一种广泛运用的在程序之间传输信息的机制,android中我们要发送的广播内容是一个intent,这个Intent中可以携带我们要传送的数据。
2.广播的场景
A、同一个app具有多个进程的不同组件之间的消息通信
B:不同app之间的组件之间的消息通信
3.广播的种类
1.普通广播 Normal Broadcast
2.系统广播 System Broadcast
3..本地广播 Locall Broadcast
二、实现广播-receiver
1.静态注册:注册完成就一直运行
2.动态注册:跟随activity的生命周期
三、广播实现机制
1.自定义广播接收者Broadcast Receiver,并复写onRecvice()方法
2.通过Binder机制向AMS(Activity Manager Service)进行注册。
3.广播发送者通过Binder机制向AMS发送广播;
4.AMS查找 符合条件(IntentFilter/Permission等)的Broadcast Receiver,将广播发送到Broadcast Receiver(一般情况下是Activity)相应的详细循环队列中。
5.消息循环执行拿到此广播,回调Broadcast Receiver中的OnReceiver()方法。
四、LocalBroadcastManaget详解
1.应用内部传播,不担心信息泄露
2.比全局广播更加高效
3.更加安全
核心
网友评论