Par*_*har 1 android alarmmanager android-intent
我AlarmManager在我的应用程序中使用在适当的时间设置闹钟。我的应用程序中有多个闹钟,因此每次用户保存闹钟时,我都会找到下一次应该播放哪个闹钟,并将该闹钟的 ID 作为额外意图传递。这是我使用的代码:
Intent intent = new Intent(this, AlarmBroadcastReceiver.class);
intent.putExtra("alrmId", finalAlr);
PendingIntent pendingIntent = PendingIntent.getBroadcast(this, 56, intent, 0);
AlarmManager alarmManager = (AlarmManager) getSystemService(ALARM_SERVICE);
alarmManager.cancel(pendingIntent);
alarmManager.set(AlarmManager.RTC_WAKEUP, (System.currentTimeMillis() + (finalAlrDay * 24 * 60 * 60 * 1000) + (finalAlrHr * 60 * 60 * 1000) + (finalAlrMin * 60 * 1000) + (finalAlrSec * 1000)), pendingIntent);
Run Code Online (Sandbox Code Playgroud)
在这里,如果有任何旧的闹钟设置,我会取消,然后添加新的闹钟。所有闹钟都在正确的时间播放,但问题是alrmId我设置的值intent.putExtra始终与我第一次设置时的值相同。
例如,如果我第一次设置闹钟并且当时alrmId设置为“1”,那么无论我之后输入什么值,它都将始终保持不变。我试过调试它,我确保它intent.putExtra("alrmId", finalAlr)输入了正确的值,所以这不是问题。问题是什么?
| 归档时间: |
|
| 查看次数: |
1699 次 |
| 最近记录: |