Режим Android Doze

Документация гласит:

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

Что именно означает стационарное? Уходит ли телефон в режим ожидания, если он находится в неподвижном автомобиле? Я разрабатываю приложение, которое отправляет обновление местоположения на сервер, и если телефон переходит в режим ожидания во время движения в автомобиле, это невозможно сделать.

3 ответа

Решение

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

Разработчики Android: оптимизация для Doze и ожидания приложений

Следует отметить, что в Android N расширен режим дозирования. Здесь устройство не обязательно должно быть "абсолютно неподвижным" для "более легкой" версии дозировки - которая позволяет блокировать пробуждение, но ограничивает доступ к сети - для включения.

Принцип заключается в том, что для того, чтобы по-настоящему воспользоваться этим преимуществом, андроид должен экономить заряд батареи, если телефон находится в кармане пользователя, где он "не используется", но может и не быть стационарным.

Оригинальная "глубокая доза" "Зефира" по-прежнему очень присутствует в N, поэтому, если телефон не используется в течение продолжительного времени [экран выключен + зарядка не соответствует критериям], он перейдет в исходную дозу, где сканирование Wi-Fi и Сканирование gps [обновления местоположения], блокировки пробуждения, планировщики заданий, адаптеры синхронизации и доступ к сети ограничены.

Чтобы ответить на ваш вопрос об обновлении местоположения, Android имеет прекрасный датчик обнаружения движения, который гарантирует, что устройство находится в неподвижном состоянии относительно земли, прежде чем погрузиться в более глубокую версию дозы. Таким образом, для этого конкретного случая использования вы должны быть готовы, но вы все равно должны использовать недавно введенный API планировщика заданий для пакетных обновлений. Я уверен, что выбор местоположения является одним из аспектов, вы также хотите загрузить его на свои серверы. Доступ к сети ограничен в обеих версиях режима ожидания.

ссылки https://plus.google.com/+AndroidDevelopers/posts/gwA68kaVJQ8 https://www.youtube.com/watch?v=VC2Hlb22mZM

В случае Android M режим ожидания не будет активирован, если устройство находится в движущемся автомобиле.

Но в Android N был введен режим легкой дозы, который не требует, чтобы устройство было полностью неподвижным или ожидало, пока оно активировалось. Оно запускается вскоре после того, как экран выключен и устройство не заряжается, ожидая всего пару минут. перед применением ограничений просто чтобы убедиться, что пользователь прекратил пользоваться своим телефоном.

В случае, если телефон Android N, он может перейти в режим легкой дремоты.

Другие вопросы по тегам