Saya memiliki 2 alarm. Saya menggunakan maksud dengan ekstra alih-alih tindakan untuk mengidentifikasi peristiwa:
Intent i = new Intent(context, AppReciever.class);
i.putExtra("timer", "timer1");
masalahnya adalah dengan diff ekstra maksud (dan alarm) tidak akan menjadi unik. Jadi untuk dapat mengidentifikasi alarm mana yang aktif atau tidak, saya harus mendefinisikan diff requestCode
-s:
boolean alarmUp = (PendingIntent.getBroadcast(context, MyApp.TIMER_1, i,
PendingIntent.FLAG_NO_CREATE) != null);
dan inilah cara alarm dibuat:
public static final int TIMER_1 = 1;
public static final int TIMER_2 = 2;
PendingIntent pending = PendingIntent.getBroadcast(context, TIMER_1, i,
PendingIntent.FLAG_CANCEL_CURRENT);
setInexactRepeating(AlarmManager.RTC_WAKEUP,
cal.getTimeInMillis(), AlarmManager.INTERVAL_DAY, pending);
pending = PendingIntent.getBroadcast(context, TIMER_2, i,
PendingIntent.FLAG_CANCEL_CURRENT);
setInexactRepeating(AlarmManager.RTC_WAKEUP,
cal.getTimeInMillis(), AlarmManager.INTERVAL_DAY, pending);