Как тревожить, пока устройство спит?Android

Форум для тех, кто программирует под Android
Ответить
Anonymous
 Как тревожить, пока устройство спит?

Сообщение Anonymous »

Я видел, что есть много подобных вопросов, когда люди испытывают проблемы по поводу этой темы, однако я все еще не мог решения, которое сработало для меня. Итак, вот я .. < /p>
Я пытаюсь создать функцию тревоги. Он имеет обычное поведение по умолчанию тревоги, что означает, что пользователь может создать любое количество тревоги в любое время, устанавливающее в любое время. Читая документы, которые я узнал: < /p>

Примечание: ни setAndallowwhileidle (), ни SetExactandAllowwhileIdle ()
не может выстрелить тревоги более одного раза за девять минут, Per App. И это было последовательно: 1 -е намерение будет захвачено в режиме «Доз», в рамках простых вексов. Тогда я бы проверил погоду, в течение этого 9 -минутного периода дазы есть больше сигналов тревоги, и если бы я создал бы Wakelock до тех пор, пока не была выполнена последняя тревога этого периода. Wakelock был типа: < /p>

Код: Выделить всё

powerManager.newWakeLock(PowerManager.PARTIAL_WAKE_LOCK, "MyApp::AlarmWakeLock");
Однако, хотя в журналах по какой-то причине блокировка отображалась как полученная, WakeLock не вступал в силу и не разбудил устройство, чтобы другие сигналы тревоги могли запустить трансляцию. Почему это происходит? Я добавил необходимые разрешения для этого действия — android.permission.WAKE_LOCK, android.permission.SYSTEM_ALERT_WINDOW, android.permission.SCHEDULE_EXACT_ALARM. И PendingIntent, который должен запускать этот сигнал тревоги, имеет тип: PendingIntent.FLAG_UPDATE_CURRENT и всегда имеет один и тот же идентификатор с прикрепленными уникальными дополнительными функциями.
Я тестировал это на нескольких устройствах. физический/виртуальный с другим API, и проблема, похоже, сохраняется.
Последнее, о чем я думал, это ограничение заряда батареи, однако приложение часов по умолчанию на телефоне не было исключено из этих ограничений. ограничение и по-прежнему работает так, как предполагалось, поэтому я не думаю, что это тоже играет роль.
Почему это происходит? Я что-то упустил в коде? Спасибо, любая помощь будет очень признательна

Подробнее здесь: https://stackoverflow.com/questions/793 ... -is-asleep
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Android»