android - LocalBroadcastManager 与使用回调

标签 android callback broadcastreceiver

Android 的兼容包支持 LocalBroadcastManager,它可以在我的进程中发送广播。 http://developer.android.com/reference/android/support/v4/content/LocalBroadcastManager.html

直到现在,我一直在使用回调(类似于 OnClickListener 的接口(interface))在应用的不同部分之间传输数据(异步和同步)。

我想知道一个是否比另一个更好。 有什么意见吗?

最佳答案

LocalBroadcastManager 允许您使用 IntentIntentFilter,因此更容易从系统范围的广播迁移到本地广播。它还有一些排队代码,可能比您自己的代码更可靠(或不可靠,取决于您的实现的复杂程度)。除此之外,它本质上只是将接收者列表保存在内存中并迭代它们以找到匹配项。

另一种替代方法是使用事件总线,例如 Square 的 Otto (基于 Guava ),它增加了类型安全性并且同样高效。

关于android - LocalBroadcastManager 与使用回调,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13948720/

相关文章:

java - 我有一个关于动画拖放的问题

C#/C++ 回调作为 NULL 传递

node.js - 回调在 Alexa 技能中重要吗?

android - 有条件地从 Android 中的通知重启 Activity

android - wifi连接改变广播接收器重复多次

android - 游标返回计数 -1,但项目存在?

java - Android 中的自定义曲线

java - android字符串如何放置&字符

javascript - 传递一个函数作为 Javascript 中可能尚不存在的参数

android - 接收下载管理器下载完整的 Intent 并比较 id - android