0

我有一个问题,我的 BroadcastReciever 设置为从 AlarmManager 接收事件,但在主活动启动的子活动中没有收到。我不知道在哪里看。有时,如果子活动启动得足够快,则 AlarmMananger 似乎永远不会发送事件。我试图在未来几周内触发事件,但我什至无法在未来的工作中获得几秒钟,只有几毫秒我才能在 BroadcastReciever 的 onReceive() 中得到任何回复(这是在类 NotifyAlarmReceiver 中实现的)

我的清单文件有这个:

<receiver android:name=".notifications.NotifyAlarmReceiver"></receiver>

我尝试过使用进程和导出字段,但它们似乎没有做任何事情。

设置警报的代码是:

Intent notifyReceiverIntent = new Intent(this, NotifyAlarmReceiver.class);
PendingIntent notifyPI = PendingIntent.getBroadcast(this, 0, notifyReceiverIntent, PendingIntent.FLAG_UPDATE_CURRENT);
mAlarmManager.set(AlarmManager.RTC, timems, notifyPI);

我现在应该去哪里看?

4

1 回答 1

0

我会尝试以编程方式注册和注销接收器,看看是否有任何改变。假设您没有被迫从清单中声明静态接收器。您的问题感觉很奇怪,因为听起来您的意图没有持续足够长的时间以到达您的接收器,并且可能反过来。而且我一直在我的接收器上使用带有应用程序包名称的 xml 标记。

于 2012-06-27T11:36:44.417 回答