我的目标是为每个事件发出警报,eventsDb.getFavouriteEvents()
但每次只触发一个。
在我看来,这可能是由设置引起的PendingIntent.FLAG_UPDATE_CURRENT
,但是我需要这个标志来有意地发布 Extras。有没有办法不设置这个标志并仍然有意图地发布 Extras?
我将它们存储PendinIntents
在 Collection ( pendingIntents
) 中,因为我要在onDestroy()
此类中取消它们Service
。
这是来自的代码onCreate()
:
for(Event event : eventsDB.getFavouriteEvents()) {
Intent intent = new Intent(AlarmReciever.ONCOMING_EVENT);
intent.putExtra(Event.TITLE, event.getTitle());
PendingIntent pendingIntent = PendingIntent.getBroadcast(EventAlarmService.this, 0, intent,
Intent.FLAG_GRANT_READ_URI_PERMISSION | PendingIntent.FLAG_UPDATE_CURRENT);
alarmManager.set(AlarmManager.RTC_WAKEUP, event.getTime(), pendingIntent);
pendingIntents.add(pendingIntent);
}
感谢帮助!