Я пытаюсь написать простое приложение, которое должно отключить мой мобильный телефон в течение заданного времени. Это мое первое приложение для Android, но после многих часов чтения я думаю, что он почти завершен. Но у него все еще есть одна проблема, которую я не могу исправить.Handler.postDelayed не вызывается, когда мобильный телефон в режиме ожидания
Я использую активность для отображения графического интерфейса. У этого есть Кнопки, чтобы установить время начала и окончания, и все остальное необходимо. Когда пользователь вводит все параметры, они передаются службе. Эта служба использует объект обработчика, чтобы зарегистрировать 2 обратных вызова (с Handler.postDelayed). Один для запуска Mute и один для End Mute (в SetMuteIntervall). Первые тесты, похоже, сработали, но если я попытаюсь отключить его примерно на 30 минут, он никогда не загорается. Я думаю, что это имеет какое-то отношение к тому, что мобильный телефон находится или находится в режиме ожидания. Я также пытался использовать Handler.postAt(), но это тоже не сработало (и время относительно времени безотказной работы было несколько запутанным).
Итак, что мне делать, чтобы гарантировать, что вызываются мои обратные вызовы, независимо от того, находится ли телефон в режиме ожидания или нет?
Вот источник моей программы: