ユーザーがタスクと各タスクのアラームまたは通知を設定できるようにするアプリを作成しようとしています。以下に「setAlarm」メソッドを作成しました。ただし、アラームで複数のタスクを設定するたびに、何らかの理由で以前のタスクがすべてキャンセルされ、最後に設定されたアラームのみが鳴るというエラーがあります。何が問題か知っていますか?私の推測では、「setAlarm」を呼び出すたびに「calendar」インスタンスがリセットされます。どうすればこれを回避できますか?
public void setAlarm() {
Intent intent1 = new Intent(NewGoal.this, SingleAlarm.class);
PendingIntent sender = PendingIntent.getBroadcast(NewGoal.this,
0, intent1, 0);
Calendar calendar = Calendar.getInstance();
calendar.setTimeInMillis(System.currentTimeMillis());
if (alarm_time == 10) {
calendar.add(Calendar.SECOND, alarm_time);
} else if (alarm_time == 30 {
calendar.add(Calendar.SECOND, alarm_time)
}
AlarmManager am = (AlarmManager)getSystemService(ALARM_SERVICE);
am.set(AlarmManager.RTC_WAKEUP, calendar.getTimeInMillis(), sender);
Log.i(TEST, "In setAlarm method");
Log.i(TEST, "calendar=" + calendar.MILLISECOND);
}