我正在构建一个警报应用程序。我现在添加的功能之一是闹钟的音量。用户在设置闹钟时,可以用 选择闹钟音量SeekBar
。因此,当闹钟响起时,它的音量应该设置为用户设置的任何值。为此,我需要知道已调用了哪个特定警报。我已经PendingIntent
从数据库中识别出每个警报的 ID。我的问题是一旦警报响起,我就是不知道如何再次检索此 ID。
如您所见,这就是我通过传入来识别每个 PendingIntent 的方式alarm.getID()
:
PendingIntent pendingAlarmIntent = PendingIntent.getBroadcast(
ChangeAlarmActivity.this, (int)alarm.getID(), alarmIntent, 0);
因此,在闹钟响起时调用的活动中,我想做类似的事情
int id = pendingIntent.getID();
Alarm alarm = database.getAlarm(id);
int volume = alarm.getVolume();
因此,如何在打开警报后调用的 Activity 中获取 PendingIntent 的唯一标识符?换句话说,我怎么知道哪个警报被触发了?