LocalBroadcastReceiver (本地广播)2017-05-26
来源:互联网 发布:百度预测大数据 足球 编辑:程序博客网 时间:2024/05/18 02:07
今天学习了本地广播接收器LocalBroadcastReceiver,详细记录一下!
相比前面的系统和全局广播来说,本地广播有效的解决了数据安全性的问题,例如在全局广播中那我们都知道我们的广播中携带数据的广播 信息容易被其他程序截获,或者其他程序可能向我们的程序不停的发送垃圾信息,因此使用本地广播就有效的解决了这一问题的发生:
本地广播的实现主要是依赖LocakBroadcastManager来对广播进行管理,由此提供广播的发送和接受,下面是我的Demo
public class MainActivity extends AppCompatActivity { private IntentFilter intentFilter; private LocalBroadcastManager localBroadcastManager; private LocalReceiver localReceiver; private Button btn; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); localBroadcastManager= LocalBroadcastManager.getInstance(this); btn= (Button) findViewById(R.id.btn); btn.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { Intent intent=new Intent( "com.exapmle.shanshui.LOCAL_BROADCAST"); localBroadcastManager.sendBroadcast(intent);//发送广播 } }); intentFilter=new IntentFilter(); intentFilter.addAction("com.exapmle.shanshui.LOCAL_BROADCAST"); localReceiver = new LocalReceiver(); //注册本地广播监听器 localBroadcastManager.registerReceiver(localReceiver,intentFilter); } /* * * 本例实现的是动态注册年广播接收器 * 所以需要在Destory中接触绑定注册*/ @Override protected void onDestroy() { super.onDestroy(); localBroadcastManager.unregisterReceiver(localReceiver); } class LocalReceiver extends BroadcastReceiver{ @Override public void onReceive(Context context, Intent intent) { Toast.makeText(context, "接收到本地广播", Toast.LENGTH_SHORT).show(); } }}
从代码上来看我们知道,在本地广播机制中,我们只能使用的是动态的注册接收器,因为静态注册的方法是主要为了让程序在未启动的情况下也能接受广播,而我们的本地广播是在程序启动的时候执行,所以就完全不需要实现静态的注册(也就是不需要在AndroidMainfest清单文件中声明注册)
阅读全文
0 0
- LocalBroadcastReceiver (本地广播)2017-05-26
- 使用本地广播 LocalBroadcastReceiver
- Android LocalBroadcastReceiver本地广播
- LocalBroadcastReceiver
- 本地广播
- 本地广播
- LocalBroadcastReceiver分析
- 普通广播与本地广播
- Android本地广播机制
- LocalBroadcastManager本地广播处理
- 发送本地广播
- 发本地广播
- android本地广播
- Android使用本地广播
- 使用本地广播
- Broadcast--本地广播
- 发送 广播 (全局、本地)
- 本地广播的使用
- Django 使用 include() 配置 URL
- apk签名后无法在手机上安装的问题
- Spring IOC的理解
- 代码规范
- 锤子官方再曝新手机 暗示坚果Pro采用新后壳
- LocalBroadcastReceiver (本地广播)2017-05-26
- MapReduce程序的jar包导出小问题
- gets,fgets,getchar,puthar,stdin,stdout总结
- MySQL总结笔记3-表复制及备份还原
- 如何用springcloud找妹纸之7--- 断路在手,天下我有(Hystrix)
- Oracle ADF常用快捷键
- ubuntu 将.sh执行设置快捷桌面
- 德银:iPhone 8或推迟到2018年上市
- 华中农业大学第五届程序设计大赛 JColor Circle