Воскресенье, 14 апреля, 2024

Как Samsung и Android запретить убивать приложения в фоновом режиме?

Да, Samsung – доминирующий производитель смартфонов на рынке Android. И в настоящее время использует одну из самых отвратительных технологий экономии батареи в отрасли. Они могут убить фоновые процессы и сделать будильник бесполезным. Смотрите ниже обходные пути.

ОБНОВЛЕНИЕ 2021: Несмотря на то, что команда Android обещала заставить OEM-производителей (включая Samsung) быть прозрачными в отношении принудительного завершения нестандартных приложений, в Android 11 Samsung ввела новое серьезное ограничение (по умолчанию включено). 

Приложения больше не могут удерживать блокировку пробуждения в службах переднего плана (foreground services). Это исключает многие варианты использования, например, приложения для здоровья теперь не могут собирать сенсорные данные для своих пользователей.

Зафиксировано большее количество завершений приложений после обновления на Android 11. Адаптивная батарея на Samsung работает гораздо агрессивнее чем на стоковом Android.

Через 3 дня любое неиспользуемое приложение не сможет запускаться из фона (например, уведомления больше не будут приходить). Представьте себе, вы не будете пользоваться будильником на выходных +1 день и все, будильник во вторник не зазвонит и вы опоздаете на работу.

Настоятельно рекомендуется отключить адаптивную батарею (Adaptive battery) и перевести приложения в спящий режим согласно инструкциям ниже.

ВАЖНО: Даже когда параметры адаптивной батарее отключены, Samsung может включить их снова при обновлении прошивки!

Какие приложения для оптимизации есть у Samsung?

  • Android 11: оптимизация батареи, автоматическая оптимизация, адаптивная батарея, ограничения фона, списки спящих приложений, неиспользуемые приложения, глубокие спящие приложения, никогда не спящие приложения;
  • Android Pie и выше: уход за устройством, списки спящих приложений, неиспользуемые приложения, автоматическое отключение неиспользуемых приложений;
  • Android Oreo или Nougat: обслуживание устройства;
  • Android Marshmallow или ниже: умный менеджер.

Решение для пользователей

Android 11

На Android 11 Samsung по умолчанию запрещает приложениям работать в фоновом режиме, если вы не исключите приложения из оптимизации заряда батареи. Это серьезное отклонение от стандартных политик управления процессами Android. Чтобы ваши приложения работали должным образом, убедитесь, что вы включили:

Настройки > Приложения > Ваше приложение > Батарея > Оптимизация батареи > Все приложения > Ваше приложение > Не оптимизировать.

Да, это долгий путь. Разработчики не могут запрашивать это автоматически, поскольку они рискуют быть выгнанными из Play Store из-за нарушений политики Google.

Galaxy S9 / S10

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

Ниже представлены скриншоты настройки Galaxy S10.

Спящие приложения

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

Контрольный список:

  • Отключить Отправить неиспользуемые приложения в спящий режим (Put unused apps to sleep)
  • Отключить автоматическое отключение неиспользуемых приложений (Auto-disable unused apps)
  • Удалить приложение из списка спящих приложений
  • Отключите фоновые ограничения (background restrictions) для вашего приложения
ПРЕДУПРЕЖДЕНИЕ. Убедитесь, что неиспользуемые приложения находятся в спящем режиме, а функция автоматического отключения неиспользуемых приложений отключена. В противном случае Samsung вернет ваши приложения в спящий режим через несколько дней (по умолчанию 3), даже если вы разбудили их вручную!

Samsung Galaxy S8 и более новые

С представлением своего флагмана Galaxy S8 (и с некоторыми более ранними экспериментами) Samsung представила неудачную попытку продлить срок службы батареи под названием App power monitor.

Чтобы ваши приложения работали правильно, внесите их в белый список в App power monitor.

Откройте «Настройки» > «Обслуживание устройства» > «Аккумулятор», и внизу вы увидите список наиболее часто используемых приложений. Вы можете управлять приложениями по отдельности или в группе, выбрав их и нажав большую кнопку Save power. Спящие приложения появятся в списке Sleeping apps внизу (коснитесь его, чтобы развернуть список). Прокрутите дальше — вплоть до самого низа — и вы найдете Unmonitored apps. Это приложения, которые вы специально хотите исключить (белый список) из злой досягаемости App power monitor.

Находясь в меню Unmonitored apps «Необслуживаемые приложения», вы можете нажать 3х-точечное меню, чтобы добавить или удалить приложения из списка. Вместо того, чтобы беспокоиться об этом, вы можете просто полностью отключить функцию контроля питания приложения, так как она практически не влияет на время автономной работы и только мешает нормальному функционированию вашего Samsung Galaxy.

Это чрезмерно, а в некоторых случаях просто вводит в заблуждение, используя тактику запугивания, чтобы вы зависели от программного обеспечения Samsung, когда другие устройства Android прекрасно обходятся без него.

На других телефонах Samsung путь может выглядеть следующим образом

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

ПРИМЕЧАНИЕ. Если вы включите Edge Lighting для своего приложения, приложение не сможет разбудить ваш экран. Чтобы приложение могло активировать экран, удалите его из списка приложений Edge Ligthing.

Решение для разработчиков

Нет известного решения на стороне разработчика

Чтобы проверить, на сколько агрессивно смартфон работает с приложениями в фоне, нужно воспользоваться статьей: Как проверить работу приложений в фоновом режиме на Android.

Пожалуйста лайк, репост

Это тоже интересно

РЕКОМЕНДУЕМ

Интересное