OS
April 2, 2019

Оптимизация Android

Хочешь, что бы твой телефон работал быстрее и дольше? Не проблема.

Держи мануал для оптимизации и настройки ОС Android.

Для описанных способов оптимизации и настройки необходимы ROOT права. Инструкцию по их получению для своего смартфона можно найти на 4PDA или XDA.

BackUp

Перед любыми действиями обязательно нужно сделать BackUp.

Для создания резервной копии приложений, контактов и остального можно использовать App Backup & Restore.

Интерфейс программы прост и понятен. Есть возможность сразу загрузить BackUp в Google Drive.

Оптимизация

Greenify

Doze — это появившаяся в Android 6.0 система энергосбережения. По умолчанию она включается примерно через час неактивности смартфона, а ее работа состоит в том, чтобы не дать приложениям проснуться и истратить заряд аккумулятора (более подробно про режим Doze мы писали в статье «Дозируй батарею правильно!»).

В большинстве случаев тюнинговать Doze бессмысленно, но если ты хочешь, чтобы смартфон действительно долго работал от аккумулятора, то Doze можно заставить включаться не спустя час, а через несколько минут после отключения экрана. Сделать это можно с помощью программы Greenify (настройка «Агрессивный Doze»).

Однако есть и побочные эффекты: перестанут приходить уведомления от некоторых приложений. Чтобы это исправить, приложения нужно добавить в белый список. Переходим в «Настройки → Приложения → Значок шестеренки → Специальный доступ → Экономия заряда батареи». Нажимаем на «Экономят заряд», переключаемся на «Все приложения» и отключаем экономию заряда для нужных приложений.

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

Kernel Adiutor

Подсистема, ответственная за закрытие приложений, называется Low Memory Killer. Ее можно настроить на свой вкус либо внеся правки в файл /sys/module/lowmemorykiller/parameters/minfree.

Итак, устанавливаем и запускаем Kernel Adiutor, переходим на вкладку Low Memory Killer. Все приложения делятся на шесть групп:

- Активные приложения (FOREGROUND_APP) — запущенные в данный момент приложения.

- Видимые приложения (VISIBLE_APP) — работающий в фоне процесс, отвечающий за вывод той или иной информации на экран (например, выдвижная панель, виджет).

- Вторичные приложения (SECONDARY_SERVER) — фоновый сервис (музыкальный проигрыватель, радио и так далее).

- Скрытые приложения (HIDDEN_APP) — выполняют какие-то действия в фоне, но при этом не выводят уведомление.

- Контент-провайдеры (CONTENT_PROVIDER) — фоновый сервис, отвечающий за хранение и быстрое предоставление какой-либо информации, когда другие приложения просят ее предоставить.

- Пустые приложения (EMPTY_APP) — фоновое приложение, которое ничего не делает.

Чуть ниже есть раздел «Профили». Здесь Kernel Adiutor предлагает несколько шаблонов настройки агрессивности Low Memory Killer.

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

Согласно данным на скриншоте, система будет вести себя следующим образом:

- если в ОЗУ свободно более 81 Мбайт, то никакие программы закрываться не будут;

как только в ОЗУ останется от 81 до 62 Мбайт, Low Memory Killer начнет убивать исключительно приложения категории EMPTY_APP;

- свободной оперативной памяти стало от 63 до 55 Мбайт — будут закрыты программы категорий EMPTY_APP (в большинстве случаев они уже закрыты) и CONTENT_PROVIDER;

если свободной оперативной памяти останется менее 27 Мбайт, будет закрыто активное приложение (FOREGROUND_APP), с которым взаимодействует пользователь (очень маловероятная ситуация).

Внутри конкретной группы в первую очередь будут остановлены процессы, занимающие больше всего памяти. После устранения каждого процесса Low Memory Killer сверяет доступный объем ОЗУ со своим файлом параметров и решает, нужно ли продолжать убивать.

Многие пользователи привыкли открывать экран с последними приложениями и смахивать их. В этом случае обычно прерываются EMPTY_APP и CONTENT_PROVIDER (которые ничего не потребляют и молча ждут либо когда Low Memory Killer их прибьет, либо когда пользователь их запросит и они смогут почти мгновенно предоставить контент). Процессы от HIDDEN_APP до FOREGROUND_APP обычно уже закрыты. Что пользователь получает взамен — при повторном открытии «смахнутых» приложений смартфон вновь должен загружать приложение с «диска» и как минимум заново отрисовывать все элементы интерфейса. В результате повышается расход аккумулятора и возрастает время открытия приложений.

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

Я рекомендую не заморачиваться с тестами и просто поставить «Очень легкий» профиль в Kernel Adiutor.

Autostarts

Софт позволит управлять ресиверами приложений (изменение сети, автозагрузка и т.д.).

Интерфейс крайне простой. Советую отключить автостарт большинству приложений.