我在我的项目中使用了Alarm Manger,我在我的Manifest中有这个声明。一切都在工作完美和精细,但我在脑海中有这样的询问,为什么以下
<receiver android:name="wokerClasses.alarmReceiver"></receiver>
在onReceive()中处理接收器的类的声明没有intent-Filter?我想了解系统如何调用并识别这个特定的接收器和为什么没有其他sendBroadcast()调用这个接收器。
答案 0 :(得分:0)
系统如何调用并识别此特定接收器
您正在使用PendingIntent
创建getBroadcast()
,其中包含标识此Intent
的{{1}}。 BroadcastReceiver
是显式Intent
,用于标识组件的特定Java类。 Intent
允许您有选择地授予其他进程(例如管理警报事件的Android核心进程),以便能够向该接收器发送广播,即使该接收器未导出。
为什么没有其他sendBroadcast()调用此接收器。
该接收器未导出;除了以下内容之外,系统上没有任何其他内容可以发送广播:
PendingIntent
你给他们的人