我的要求是:我的应用需要注册某些广播。如果我的Activity
在收到广播时“正在显示”,那么我会更新用户界面;否则,我会显示Notification
。
Commonsware为此提出了elegant solution;使用有序广播。我的问题是,我想在我的流程中完成所有 本地 。很遗憾,LocalBroadcastManager
没有等效的sendOrderedBroadcast()
。
LocalBroadcastManager
?答案 0 :(得分:0)
这只是LocalBroadcastManager的疏忽吗?
Google没有无限的工程时间。
或者它是否指向最佳实践(在本地发送有序广播是一个坏主意)?
我对此表示怀疑。
您是否考虑在Activity类中使用onUserLeaveHint()和onUserInteraction()callack?
onUserLeaveHint()
在这里不够用(例如,不包括用户接听来电的情况),而我无法看到onUserInteraction()
如何帮助您。
答案 1 :(得分:0)
我最终实现了具有有序广播功能的LocalBroadcastManager
。该项目是shared at github。
虽然它符合我的直接目的,但它的边缘仍然很粗糙。它需要一些增强功能(例如,setResult*
和getResult*
方法)。欢迎代码贡献:)