我有一个用例,其中Service
可以在后台运行,需要将事件通知给两个Activities
和一个Service
。我正在使用有序广播,因为:
1)如果ActivityA
位于前台,它会处理传入的事件,然后中止广播。这样,ActivityB
和Service
就不会得到通知。
2)如果广播没有中止,ActivityB
是下一行。如果激活,它也会取消广播。
3)否则,Service
会处理此事件。
为此,每个组件都有一个BroadcastReceiver
,具有不同的优先级。 Service's BroadcastReceiver
是一个内部静态类,<receiver>
在AndroidManifest.xml中使用正确的<intent-filter>
声明。
问题是,正如here指出的那样,我不希望任何人通过在清单上留下自定义操作来窃听我的广播,但我不知道除了使用订购之外的任何其他方式来实现订购广播。
还有其他选择吗?