Я сделал приложение для Android с помощью AlarmManager, он отлично работает, но когда я использую cancel(), чтобы отменить будильник, он не работает нормально, и будильник продолжает работать !!отмена тревоги в android с помощью отмены()
здесь делает тревогу:
private void setAlarm(Intent intentArg, int intentUnqId, int year, int month, int day, int hour, int minute, boolean repeatAlarm)
{
PendingIntent pendingIntent = PendingIntent.getBroadcast(context, intentUnqId, intentArg, PendingIntent.FLAG_ONE_SHOT);
SimpleDateFormat format = new SimpleDateFormat("dd-MM-yyyy HH:mm:ss ");
Log.v("app", "Time is " + format.format(calendar.getTime()));
AlarmManager alarmMngr = (AlarmManager) getSystemService(Context.ALARM_SERVICE);
alarmMngr.set(AlarmManager.RTC_WAKEUP, calendar.getTimeInMillis(), pendingIntent);
if (repeatAlarm == true)
{
alarmMngr.setInexactRepeating(AlarmManager.RTC_WAKEUP, calendar.getTimeInMillis(), 2 * 60 * 1000/*AlarmManager.INTERVAL_FIFTEEN_MINUTES*/, pendingIntent);
}
}
здесь отменяет тревогу:
PendingIntent pendingIntent = PendingIntent.getBroadcast(context, intentID, intentArg, 0);
AlarmManager alarmMngr = (AlarmManager) getSystemService(Context.ALARM_SERVICE);
alarmMngr.cancel(pendingIntent);