Чрезмерные частичные блокировки пробуждения (бета)

Частичная блокировка пробуждения — это механизм API PowerManager , который позволяет разработчикам поддерживать работу ЦП после выключения дисплея устройства (будь то из-за тайм-аута системы или нажатия пользователем кнопки питания). Ваше приложение получает частичную блокировку пробуждения, вызывая acquire() с флагом PARTIAL_WAKE_LOCK или используя другие API, которые получают блокировки пробуждения . Чрезмерное использование частичной блокировки пробуждения разряжает батарею устройства, поскольку предотвращает переход устройства в режимы пониженного энергопотребления. Частичные блокировки следования следует использовать только при необходимости и отпускать, как только в них больше нет необходимости.

Если ваше приложение чрезмерно использует частичную блокировку пробуждения, вы можете воспользоваться инструкциями на этой странице, чтобы диагностировать и устранить проблему.

Ваши отзывы — важная часть улучшения нашей документации. Пожалуйста, оставьте нам свой отзыв, используя следующую ссылку:

Оставьте отзыв

Обнаружить проблему

Android Vitals может помочь вам узнать, когда ваше приложение использует чрезмерную частичную блокировку пробуждения.

Android Vitals

Android Vitals может помочь повысить производительность вашего приложения, предупреждая вас через Play Console, когда ваше приложение использует частичную блокировку пробуждения чрезмерно.

Android Vitals сообщает об использовании частичной блокировки пробуждения как чрезмерное , если все частичные блокировки пробуждения , вместе взятые, работают в течение 3 или более часов в течение 24 часов.

Android Vitals отслеживает время, только если блокировка пробуждения удерживается, когда приложение находится в фоновом режиме и не имеет службы переднего плана .

Android Vitals предоставляет некоторые исключения для использования частичной блокировки пробуждения в сценариях, где есть явная польза от частичной блокировки пробуждения, и нет лучшего способа добиться этого результата без частичной блокировки пробуждения. В таких случаях Android Vitals может не учитывать время частичной блокировки пробуждения в пределах трехчасового ограничения. Например, если приложение воспроизводит звук для пользователя, есть очевидная выгода от того, чтобы устройство не отключалось, и нет возможности воспроизводить звук, не поддерживая устройство в бодрствующем состоянии. В этом случае время частичной блокировки пробуждения не учитывается в Android Vitals.

Если чрезмерные частичные блокировки пробуждения происходят более чем в 5 % сеансов приложения на всех устройствах за 28 дней, это может повлиять на видимость вашего приложения в Google Play, как только показатель выйдет из бета-версии.

Как только вы узнаете, что в вашем приложении используются чрезмерные частичные блокировки пробуждения, следующим шагом будет решение проблемы.

Устранить проблему

Поскольку блокировки пробуждения могут разрядить аккумулятор устройства, не следует использовать блокировки пробуждения, если есть альтернатива. Документация «Выберите правильный API для поддержания работоспособности устройства» поможет вам найти лучшее решение для вашего приложения.

Если вам все же необходимо использовать блокировку пробуждения, следуйте рекомендациям по блокировке пробуждения, чтобы убедиться, что блокировка пробуждения не снижает эффективность устройства. В частности, убедитесь, что все приобретенные вами устройства разблокированы, и снимите блокировку как можно быстрее.

После устранения проблемы в коде вы можете проверить свои исправления с помощью локальных инструментов отладки блокировки пробуждения .

См. также

{% дословно %} {% дословно %} {% дословно %} {% дословно %}