Есть ли способ исключить приложение из Doze?

12

Доза принесла большую пользу моему стареющему Nexus 5. Но, к сожалению, его присутствие также положило конец моему опыту в WhatsApp Web; поскольку их «веб-приложение» на самом деле является просто «интерфейсом» и все еще требует активного подключения телефона к Интернету.

Как мы все знаем, Doze переводит телефон в режим ожидания, когда каждое ненужное соединение прерывается. Это означает, что оно также остановит приложение WhatsApp в моем телефоне (и, следовательно, в браузере моего компьютера).

Теперь, есть ли способ исключить WhatsApp из Doze? Я имею в виду, возможно ли что-то подобное?

ps , я предпочитаю нерутированный подход к этой проблеме, но рутирование должно быть моим единственным вариантом, пусть будет так.

MrHadiSatrio
источник
Здравствуй! Пожалуйста, прочитайте Как мне задать хороший вопрос? Тщательно ли вы искали / изучали ответ, прежде чем задать свой вопрос? Расскажите нам, что вы пробовали до сих пор и почему это не отвечает вашим потребностям? Это показывает, что вы потратили время, чтобы попытаться помочь себе, и избавляет нас от повторения очевидных ответов.
Повелитель огня
Если честно, я не вижу смысла в вашем аргументе: я пытался искать, но он не дал результатов. Я признаю, что ничего не пробовал до того, как задавать этот вопрос, кроме как копаться в настройках; следовательно, почему я задал этот вопрос. Судя по голосам, это кажется полезным для многих людей; это очевидно для меня.
MrHadiSatrio
На данный момент для меня несущественно, видите ли вы точку в моем аргументе или нет. Я проголосовал по вашему вопросу и почувствовал необходимость оправдать свой голос. Это все, что я сделал. На мои аргументы и голосование не влияет количество голосов, оставшихся в настоящее время на этой должности. Вместо этого я только оцениваю содержание и принимаю меры. Пожалуйста, не спорьте дальше, если вы обнаружите необходимость сделать это. Используйте флаги для модерации, требующей очистки, если это необходимо.
Повелитель огня
2
Что ж, если это так, позвольте мне поблагодарить вас за то, что вы нашли время для голосования. Обратите внимание, однако, что вопрос может считаться «недостаточно хорошим» по определенным стандартам, в то время как он может оказаться полезным для нуждающихся людей. И, наконец , полезность контента - это то, что действительно важно для сайта, посвященного помощи людям; не столько, сколько следует определенному стандарту.
MrHadiSatrio

Ответы:

16

Этот ответ основан на моем Nexus 9 на MRA58K. Это должно быть похоже на любое приложение.

Следуйте инструкциям ниже:

  1. Зайдите в Настройки → Аккумулятор

  2. Нажмите в верхнем правом 3-точечном меню и выберите Оптимизация заряда батареи.

  3. Под панелью действий в левом верхнем углу должен быть раскрывающийся список, выберите «Все приложения» из списка.

  4. Найдите свое приложение в списке (в данном случае Whatsapp)

  5. Нажмите на него. Вы получите всплывающее окно с 2 вариантами: Оптимизировать и Не оптимизировать

  6. Оптимизация должна быть выбрана по умолчанию.

  7. Выберите «Не оптимизировать» и нажмите «Готово» ниже.

  8. Вот и все. Я надеюсь, что это работает для вас.

Тамогна Чоудхури
источник
1
@ridsatrio это решило проблему для вас? Я все еще получаю сообщение «Ваш телефон отключен», когда мой экран выключается, и телефон переходит в
режим ожидания,
1
@swrobel, что может быть связано с рядом других причин, кроме Doze. Вы также можете проверить настройки Wi-Fi и данных, чтобы убедиться, что там нет проблем.
Тамогна Чоудхури
Если это не работает для вас, я предполагаю, что вы, как и я, переключаетесь только на Wi-Fi и отключаете данные. Проблема в том, что Doze также отключает Wi-Fi, поэтому даже если приложение, такое как WhatsApp, исключено из Doze, оно не сможет подключиться. Andriod повторно подключается к Wi-Fi только при включении экрана. Я заметил, потому что я также склонен подключить свой телефон к усилителю для прослушивания Spotify, и через некоторое время он перестанет играть, потому что Wi-Fi выключен. На другом форуме я читал, что исключение «Служб Google Connection» из Doze решит эту проблему, но я не вижу такой службы на своем телефоне.
Даниэль Санер
4

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

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

adb shell dumpsys deviceidle whitelist +PACKAGE

Замените PACKAGEна имя пакета приложения, которое вы собираетесь исключить из режима Doze. Следить за полным именем пакета приложения? если вы не знаете имя пакета вашего приложения.

Чтобы отменить изменения, замените +с -в команде сказала и выполнить его.

Пример, выполненный для приложения Kde Connect :

IMG

Обратите внимание, что графический интерфейс и метод командной строки вносят изменения в файл /data/system/deviceidle.xml. Если вы готовы к этой задаче и имеете root-доступ, вы можете отредактировать этот файл, перезагрузить устройство, и ваше приложение будет найдено на вкладке «Неоптимизировано» в разделе «Оптимизация заряда аккумулятора».

Я узнал об этой команде по этому вопросу от пользователя 2281606. Я также читал « Оптимизация для Doze и ожидание приложения» - тестирование вашего приложения с помощью Doze .

Повелитель огня
источник
Похоже, что некоторые системные пакеты (такие как com.google.android.gms) не могут быть удалены из белого списка этим методом или с помощью графического интерфейса пользователя.
Повелитель огня
1

Если вы хотите, чтобы ваше приложение было окончательно удалено из оптимизации, и если у вас есть root-доступ, вы можете просто добавить простой xml-файл в системный раздел:

Создайте файл * .xml с любым именем и добавьте следующее содержимое:

<?xml version="1.0" encoding="UTF-8"?>
<config>
    <allow-in-power-save package="com.your.package.name" />
    <allow-in-power-save-except-idle package="com.your.package.name" />
</config>

Переустановите системный раздел mount -o remount,rw /systemи скопируйте файл в свою /system/etc/sysconfig/папку. Вы также можете удалить предустановленные файлы * .xml, чтобы отключить принудительные системные службы.

Мистер фиш
источник