android 组件化架构读书笔记(三) 本地广播LocalBroadcastManager

全局广播:BroadcastReceiver

本地广播:LocalBroadcastManager 用来在同一个应用内的不同组件间发送Broadcast进行通信。

好处:

1.发送的广播只在自己的APP内传播,确保私隐信息不会泄露

2.其他app无法向自己的APP发送广播,不用被其他App干扰

3.比全局广播更高效


设定本地广播只能动态注册,无法注册到AndroidManifest,因为其设计的初衷就是不接受外部广播


本地广播的实现使用了观察者的设计模式

观察者模式:定义了对象之间的一对多依赖,当一个对象改变状态时,它的所有依赖者都会收到通知并自动更新。这种模式被广泛运用在各种消息传送触发的机制中。


基本使用:

1.获取单例实体

LocalBroadcastManager lbm=LocalBroadcastManager.getInstance(this);

2.注册广播

lbm.registerReceiver(new BroadcastReceiver(){

        @Override

        public void onReceive(Context context,Intent intent){

        }

},new IntentFilter("LOCAL_ACTION"));

3.发送广播

lbm.sendBroadcast(new Intent("LOCAL_ACTION"));

4.解绑

LocalBroadcastManager.getInstance.unregisterReceiver(lbm);

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值