Я использую этот код для установки сигнализации в Android KitKat и леденец:AlarmManager не срабатывает по времени в Android Lollipop
AlarmManager am = (AlarmManager)getSystemService(ALARM_SERVICE);
Intent i = new Intent(AlarmService.this, Reciver.class);
PendingIntent pi = PendingIntent.getBroadcast(AlarmService.this, 1201, i, PendingIntent.FLAG_UPDATE_CURRENT);
Calendar c = Calendar.getInstance();
c.set(Calendar.HOUR_OF_DAY, 9);
c.set(Calendar.MINUTE, 0);
c.set(Calendar.SECOND, 0);
am.setExact(AlarmManager.RTC_WAKEUP, c.getTimeInMillis(), pi);
этот код хорошо работает на Android KitKat, но на Android Lollipop своих пожаров с 10 или 5 минут задержки.
, но некоторые приложения работают следующим образом: [link] (http://cafebazaar.ir/app/com.hrmmrh. taghvim.aseman /? l = fa) –
Я никогда не говорил, что setExact() не работает полностью, я просто сказал, что в Android 5.0 есть известная ошибка, которая setExact() не создает триггер в точное время, когда был установлен будильник задавать. Имейте в виду, что уже есть 3 версии Lollipop (5.0, 5.0.1 и 5.0.2), поэтому эта ошибка может быть специфичной только для одного или двух из них. – mittelmania
Кажется, что затронуты только Android 5.0 и Android 5.0.1. Android 5.0.2 changelog говорит, что он исправлен http://changelog.to/aosp/aosp-LRX22C-LRX22G.html Например, на устройстве CyanogenMod 12 (с Android 5.0.2) он работает как шарм – Sarbyn