Я использую AlarmManager, пытаясь создать приложение Alarm для Android. Я заметил, что setRepeating не работает, когда телефон спит. Итак, я попробовал setExactAndAllowWhileIdle.
Но я прочитал это:
В отличие от других будильников, система может перепланировать этот тип будильника, чтобы он срабатывал не по порядку с любыми другими будильниками, даже из того же приложения. Это явно произойдет, когда устройство находится в режиме ожидания (поскольку этот будильник может сработать во время простоя, когда любые другие будильники из приложения будут отложены на потом), но также может произойти, даже когда он не находится в режиме ожидания. Обратите внимание, что ОС позволяет себе более гибко планировать эти сигналы тревоги, чем обычные точные сигналы тревоги, поскольку приложение выбрало такое поведение. Когда устройство находится в режиме ожидания, может потребоваться еще больше вольностей с планированием, чтобы оптимизировать время автономной работы.
Мне нужно точное время, как будильник. Пользователь устанавливает его на 6:00, тогда звонок в 6:01 или 6:02 будет странным! Не звонить вообще из-за того, что телефон простаивает - это катастрофа!
Что я могу сделать сейчас?