Calendar calendars = Calendar.getInstance();
calendars.set(Calendar.HOUR_OF_DAY, hour);
calendars.set(Calendar.MINUTE, min);
calendars.set(Calendar.SECOND, 0);
calendars.set(Calendar.MILLISECOND, 0);
calendars.set(Calendar.AM_PM, timezone);
PendingIntent pendingIntent = PendingIntent.getBroadcast(getBaseContext(), currentTime, intent, PendingIntent.FLAG_UPDATE_CURRENT);
if (Build.VERSION.SDK_INT < 23) {
if (Build.VERSION.SDK_INT >= 19) {
alarmManager.setExact(AlarmManager.RTC_WAKEUP, calendars.getTimeInMillis(), pendingIntent);
} else {
alarmManager.set(AlarmManager.RTC_WAKEUP, calendars.getTimeInMillis(), pendingIntent);
}
} else { alarmManager.setExactAndAllowWhileIdle(AlarmManager.RTC_WAKEUP, calendars.getTimeInMillis(), pendingIntent);
}
В моем приложении, если я установил будильник в течение часа, он работает нормально, но в течение длительного времени он не работает.
Я много искал в отношении проблемы тревоги, с которой мы столкнулись, и нашелВыяснилось, что в последних обновлениях Android ОС Android убивает приемники вещания, если память нужна для другой задачи, ИЛИ в разряженном состоянии ИЛИ без причины.
В некоторых случаях, если мобильный телефон находится в режиме ожидания / ожидания, это время также вызывает тревогу.не работает.