Я пытаюсь создать функцию тревоги. Он имеет обычное поведение по умолчанию тревоги, что означает, что пользователь может создать любое количество тревоги в любое время, устанавливающее в любое время. Читая документы, которые я узнал: < /p>
Примечание: ни setAndallowwhileidle (), ни SetExactandAllowwhileIdle ()
не может выстрелить тревоги более одного раза за девять минут, Per App. И это было последовательно: 1 -е намерение будет захвачено в режиме «Доз», в рамках простых вексов. Тогда я бы проверил погоду, в течение этого 9 -минутного периода дазы есть больше сигналов тревоги, и если бы я создал бы Wakelock до тех пор, пока не была выполнена последняя тревога этого периода. Wakelock был типа: < /p>
Код: Выделить всё
powerManager.newWakeLock(PowerManager.PARTIAL_WAKE_LOCK, "MyApp::AlarmWakeLock");
Я тестировал это на нескольких устройствах. физический/виртуальный с другим API, и проблема, похоже, сохраняется.
Последнее, о чем я думал, это ограничение заряда батареи, однако приложение часов по умолчанию на телефоне не было исключено из этих ограничений. ограничение и по-прежнему работает так, как предполагалось, поэтому я не думаю, что это тоже играет роль.
Почему это происходит? Я что-то упустил в коде? Спасибо, любая помощь будет очень признательна
Подробнее здесь: https://stackoverflow.com/questions/793 ... -is-asleep
Мобильная версия