在我的应用程序中我有2 BroadcastReceivers
。让我们打电话AReceiver
和BReceiver
。 AReceiver
只是在侦听android.intent.action.BOOT_COMPLETED
,所以如果它在我的应用程序的设置中打开,它可以注册BReceiver
以执行其他操作。检索已注册BroadcastReceiver的实例以取消注册
所以我有一个PreferenceActivity
可以切换我的应用程序的状态,这意味着:
- 状态:在
AReceiver
将不寄存器BReceiver
在启动- 想从OFF改变 - > On应寄存器
BReceiver
- S tatus:关
AReceiver
将在启动- 从在更改注册
BReceiver
- >关闭应注销BReceiver
这是我遇到的问题。我如何注销BReceiver
,如果它在AReceiver
或PreferenceActivity
中注册,可能在此期间关闭?我不知道我必须传递给unregisterBroadcastReceiver()
作为参数,因为它需要注册接收方的实例。
如何检索注册BroadcastReceiver
的实例,以便我可以取消其注册?
谢谢。我知道清单中接收器的“启用”状态,但我还是认为我仍然需要取消注册。你不应该假设:/实际上,使用这个我只需要在首选项改变时切换状态,因此呈现'AReceiver'没有用,因为我可以将'IntentFilter'放入清单中。 – taymless