我正在开发一款可触发未来活动的应用。我设置AlarmManager来实现这一目标。代码是通用的:
Intent alarmIntent = new Intent(this, MyService.class);
PendingIntent pintent = PendingIntent.getService(this, 0, alarmIntent, PendingIntent.FLAG_CANCEL_CURRENT);
AlarmManager alarm = (AlarmManager)getSystemService(ALARM_SERVICE);
alarm.set(AlarmManager.RTC_WAKEUP, time, pintent);
我想看看如何为AlarmManager设置多个未来事件。未来事件的时间都是独立的,有些可能是重复的,有些可能是一次性的。
任何机构都有此功能的经验?你介意在这里分享。
答案 0 :(得分:0)
您需要确保传递给PendingIntent
的{{1}}对每个事件都是唯一的。为了使AlarmManager
独一无二,你有一些选择:
PendingIntent
requestCode
参数
PendingIntent.getService()
Intent
中使用唯一的操作
PendingIntent.getService()
Intent
中的唯一数据
注意:在传递给PendingIntent.getService()
的Intent
中使用不同的EXTRAS不会使PendingIntent.getService()
唯一!
答案 1 :(得分:0)
感谢大卫。
我通过使用唯一的requestCode实现了这一目标。