Почему на Android вдруг внезапно перестаёт работать то или иное приложение? Сервис выгружается из памяти, виджет не подаёт признаков жизни, а фирменное приложение, например, для часов вдруг перестаёт слать на них уведомления…
Если вы сталкиваетесь с подобными ситуациями: будильник не срабатывает, уведомления от мессенджеров приходят с задержкой, фитнес-трекер перестаёт записывать активность, как только вы блокируете экран или спустя некоторое время, — обратите своё внимание на бенчмарк "Don’t Kill My App!". Ссылка на загрузку программы будет, как всегда, в самом конце публикации*
С вами на связи снова Владимир 👋 Это мой Telegram-канал (не)Честно о технологиях 💎: https://t.me/+T73gXJIKxZdk9RNG (новости, софт и видео | каждый день какие-нибудь полезности ✌️) и сегодня я вам расскажу о том, как работать с утилитой Don’t Kill My App!
Это диагностическая утилита с открытым исходным кодом, которая позволяет измерить, насколько агрессивно ваш смартфон "убивает" фоновые процессы, и предоставляет пошаговые инструкции по настройке системы для корректной работы приложений. Приложение особенно полезно для владельцев устройств таких производителей, как Xiaomi, Huawei, OnePlus, Samsung и других, которые внедряют собственные агрессивные алгоритмы энергосбережения в ущерб функциональности. Внутри Don’t Kill My App! есть справочник, который показывает, где находятся "фирменные" механизмы энергосбережения в той или иной прошивке, и объясняет, как их отключить.
Например, у меня DokeOS: я могу в настройках приложения отключить для него энергосбережение. Но это будет "энергосбережение" от ОС Android. А ещё производитель смартфона внедрил в прошивку фирменное ПО для продления времени работы устройства, и чтобы на 100% обезопасить приложение, например, тот же GloryFitPro, необходимый для работы с умными часами, — мне нужно добавить программу GloryFitPro в следующие списки: "Белый лист", "Авто запуск" и "Авто очистка". Всё это делается в отдельном приложении "Системный менеджер". В противном случае через несколько минут или пару часов процесс GloryFitPro будет выгружен из памяти средствами энергосбережения DokeOS. То есть обычный "замочек" и отключение оптимизации батареи тут не помогут. И с подобной проблемой сталкивается очень много пользователей, а где находятся нужные настройки — они не знают.
Основная функция Don’t Kill My App! — это тест производительности (DKMA benchmark), который запускает фоновую службу, планирует повторяющиеся задачи и рассчитывает процент выполненных операций от ожидаемого количества. После диагностики приложение предлагает конкретные действия для вашей модели телефона: отключение оптимизации для конкретных программ, настройки игнорирования Doze-режима или изменения политики работы в фоне. Принципиальная особенность, которая отличает это приложение: оно не вносит изменения в систему самостоятельно, а лишь показывает проблему и даёт понятные инструкции для её решения, а также не содержит трекеров и не запрашивает избыточных разрешений.
Кроме того, вы можете анонимно поделиться результатами теста с разработчиками сайта dontkillmyapp.com, что помогает формировать статистику проблемных устройств и привлекать внимание производителей к проблемам в их прошивках. У приложения более миллиона скачиваний, и поэтому база "проблемных" устройств довольно обширная, так что решение для вашего телефона (если в прошивке имеются какие-то косяки) скорее всего уже есть в базе Don’t Kill My App!
Принцип работы Don’t Kill My App! Приложение запускает фоновую службу (Foreground Service) с блокировкой процессора (WakeLock), после этого оно создаёт повторяющиеся задачи в главном потоке и отдельных потоках с интервалом примерно в 10 секунд, и запускаются регулярные будильники (Alarms). По истечении времени замеров приложение сверяет: сколько задач реально выполнилось против того, сколько их должно было выполниться по идеальному сценарию. Результат измеряется в процентах. Чем ближе значение к 100%, тем лучше. Это значит, что разработчик прошивки не использовал нестандартные способы оптимизации времени работы от батареи. Если результат очень низкий, не стоит отчаиваться — после прохождения теста следуйте рекомендациям Don’t Kill My App!
К сожалению, приложение частично переведено на русский язык — базовые элементы интерфейса, а вот справка доступна только владельцам английского языка. Приложение полностью бесплатное и не содержит в себе никакой рекламы.
💎 Мой Telegram-канал: https://t.me/+T73gXJIKxZdk9RNG (новости, софт и видео | каждый день какие-нибудь полезности ✌️)
*ссылка на чудо (Google Play и Дзен):
Если вдруг у вас есть проблемы с "засыпающими" мессенджерами, то обратите внимание на данную публикацию – https://dzen.ru/a/YWfPpUeAegDEg5ql
"Don't Kill My App" – https://play.google.com/store/apps/details?id=com.urbandroid.dontkillmyapp
Официальный сайт приложения – https://dontkillmyapp.com (онлайн-доступ к справочнику без установки приложения)
Эта статья из цикла #маленькиеполезныепрограммы Теги для поискового алгоритма: #приложения закрываются #программа не работает в фоне #не приходят уведомления сообщения в мессенджерах #теряется связь пропадает сопряжение