当前位置:   article > 正文

Android中本地广播LocalBroadcastManager的使用_localbroadcastmanager可以跨进程吗

localbroadcastmanager可以跨进程吗

LocalBroadcast与常用的Broadcast功能类似,但是具有如下优点:
1.因广播数据在本应用范围内传播,因此不必担心隐私数据泄露的问题。
2.不必担心别的应用伪造广播,造成安全隐患。
3.相比在系统内发送全局广播,它更高效。

所谓有利必有弊,LocalBroadcast有如下缺点:
1.不能跨进程。即使本应用里的两个进程之间也无法通信。

LocalBroadcast的使用方法如下:

发送广播:

  1. Intent intent = new Intent("com.test.action");
  2. LocalBroadcastManager.getInstance(context).sendBroadcast(intent);

接收广播:

  1. //注册广播
  2. private void registerTestReceiver() {
  3. IntentFilter intentFilter = new IntentFilter();
  4. intentFilter.addAction("com.test.action");
  5. LocalBroadcastManager.getInstance(context).registerReceiver(testReceiver, intentFilter);
  6. }
  7. //注销广播
  8. private void unregisterTestReceiver() {
  9. LocalBroadcastManager.getInstance(context).unregisterReceiver(testReceiver);
  10. }
  11. //广播接收器
  12. private BroadcastReceiver testReceiver = new BroadcastReceiver() {
  13. @Override
  14. public void onReceive(Context context, Intent intent) {
  15. if (intent.getAction() == null) {
  16. return;
  17. }
  18. if ("com.test.action".equals(intent.getAction())) {
  19. //TODO: 逻辑处理
  20. }
  21. }
  22. };

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/IT小白/article/detail/935140
推荐阅读
相关标签
  

闽ICP备14008679号