如果我BroadcastReceiver
通过 mainfest 文件为系统广播声明一个(例如ACTION_POWER_DISCONNECTED
),系统将在每次发送特定广播时调用它,因此 BroadcastReceiver 的生命周期不受限制。
但也有无法通过清单文件注册的广播。对于这些广播,我们必须context.registerReceiver
使用相应的IntentFilter
. 假设我为它创建了一个 BroadcastReceiverBOOT_COMPLETED
并context.registerReceiver
从中调用并且从不调用unregisterReceiver
这个接收器是否也永远存在(直到手机重新启动)?
以 Android O 为目标的应用无法再在其清单中为隐式广播注册广播接收器。隐式广播是不专门针对该应用程序的广播。
如果我上面的猜想是正确的,这将是系统更改的一个简单解决方法(当然你不应该这样做,但这是可能的)。那么在广播BroadcastReceiver
之后注册的 aBOOT_COMPLETED
是否与通过清单自动注册的 BroadcastReceiver 具有相同的生命周期(一直到下一次重新启动)?