ПО «Андроид»: оптимизация. Обзор программ, инструкция и рекомендации. Оптимизация android
Работают ли техники оптимизации Android
Содержание статьи
Блуждая по форумам и разного рода сайтам, посвященным Android, мы постоянно сталкиваемся с советами, как увеличить производительность смартфона. Одни рекомендуют включить swap, другие — добавить специальные значения в build.prop, третьи — изменить переменные ядра Linux. Подобного рода рецептов в разных вариантах можно найти огромное количество, что на XDA, что на 4PDA. Но работают ли они на самом деле?
Введение
Пользуясь самыми разными *nix-системами на протяжении последних десяти лет, я всегда удивлялся, с каким упорством некоторые, казалось бы, грамотные пользователи смартфонов пытаются впихнуть общественности свои идеи оптимальной настройки Android и лежащего в его основе ядра Linux. И ладно бы дело ограничивалось легким тюнингом подсистемы управления виртуальной памятью или включением экспериментальных опций. Нет, обычно нам предлагают применить длиннющие скрипты, изменяющие буквально каждую переменную ядра, перемонтирующие файловые системы с разными странными опциями, включающие swap, активирующие различные системные демоны и выполняющие еще миллиарды различных операций.
Нет, ну можно, конечно, предположить, что ядро Linux, Android и фирменные прошивки для смартфонов разрабатывают безграмотные идиоты, работу которых необходимо кардинальным образом переделывать, но на практике почему-то оказывается, что самые известные инструменты тюнинга, опубликованные на XDA, — это не что иное, как сборная солянка из огромного количества разрозненных рекомендаций, придуманных непонятно кем и неизвестно зачем. Абсурд ситуации доходит того, что в этих инструментах можно обнаружить строки, без изменений скопированные из скриптов для увеличения производительности Linux-сервера в условиях высоких нагрузок (я не шучу, взгляни на содержимое известного скрипта ThunderBolt!).
В целом ситуация более чем запутанная. Все советуют всё, никто не советует ничего, а те, кто что-то понимает, сидят и, попивая чай, смеются над происходящим балаганом. Но попробуем все-таки разгрести всю эту кашу.
Swap
Начнем со swap — самой абсурдной идеи из всех, что только можно придумать для применения в смартфонах. Ее смысл в том, чтобы создать и подключить файл подкачки, за счет чего удастся освободить полезное пространство в оперативной памяти. Сама по себе идея, конечно, здравая, но только если речь идет о сервере, которому интерактивность никуда не упирается. На смартфоне регулярно используемый файл подкачки приведет к неиллюзорным лагам, возникающим вследствие промахов мимо кеша, — достаточно представить, что будет, если приложение попытается отобразить одну из своих пиктограмм, а она окажется в свопе, который придется вновь загружать с диска, предварительно освободив место путем помещения в своп данных другого приложения. Ужас.
Некоторые юзеры могут возразить, что на самом деле после включения swap никаких проблем не возникает, но за это надо благодарить механизм lowmemorykiller, который регулярно убивает особо раздувшиеся и давно не используемые приложения. Благодаря ему девайс с 1 Гб памяти может никогда и не дойти до необходимости сброса данных в своп. Он же и является причиной того, почему в отличие от Linux-десктопа в Android своп не нужен.
Вердикт: очень глупая идея, реализация которой чревата серьезными лагами.
zRAM
Swap действительно очень медленный, и даже на десктопе его существование зачастую неоправданно, но что, если обмануть систему? Создадим виртуальный диск прямо в оперативке с встроенной функцией сжатия данных, подключим его как swap — и вуаля. Функция сжатия данных довольно дешева даже для современных мобильных процессоров, поэтому мы сможем расширить размер оперативки практически без потерь производительности.
Идея настолько правильная, что даже Google рекомендует применять zRAM для основанных на KitKat устройствах в том случае, если объем оперативки не превышает 512 Мб. Загвоздка только в том, что способ работает лишь для современных бюджетников, то есть устройств, основанных на многоядерных бюджетных процах от какой-нибудь MTK и 512 Мб оперативки. В этом случае поток шифрования можно вынести на отдельное ядро и вообще не париться о производительности.
На устаревших устройствах с одним ядром, для которых «гуру форумов» и рекомендуют применение данной технологии, мы вновь получим лаги, причем в довольно большом количестве. То же, кстати, относится и к технологии KSM (Kernel SamePage Merging), которая позволяет объединять одинаковые страницы памяти, освобождая таким образом пространство. Она также рекомендована Google, но на старых девайсах приводит к еще большим лагам, что вполне логично, учитывая постоянно активный ядерный поток, который непрерывно ходит по памяти в поисках дубликатов страниц (а так ли много этих дубликатов на самом деле?).
Вердикт: зависит от устройства, в большинстве случаев замедляет систему.
Seeder
В свое время это приложение наделало много шума и породило множество аналогов. В Сети появилось огромное количество сообщений о якобы феноменальном приросте производительности смартфона после его установки. Доморощенные сборщики кастомных прошивок начали включать его в свои сборки, а автор был объявлен спасителем. И все это при том, что Seeder не выполнял никаких грязных хаков, а просто исправлял один глупый баг Android.
Если вкратце, то баг состоял в том, что некоторые высокоуровневые компоненты среды исполнения Android активно использовали файл /dev/random для получения энтропии/соли. В какие-то моменты буфер /dev/random опустошался, и система оказывалась заблокирована до момента его заполнения необходимым количеством данных. А так как заполнялся он тем, что поступало с разных датчиков, кнопок и сенсоров смартфона, то времени на эту процедуру уходило столько, что пользователь успевал заметить лаг.
Для решения этой проблемы автор Seeder взял Linux-демон rngd, скомпилировал его для Android и настроил так, чтобы он брал случайные данные из гораздо более быстрого (но и намного более предсказуемого) /dev/urandom и каждую секунду сливал их в /dev/random, не позволяя последнему истощиться. Как результат — система никогда не испытывала недостатка в энтропии и спокойно работала.
Данный баг был закрыт Google еще в Android 3.0, и, казалось бы, нам незачем вспоминать о Seeder. Но дело в том, что приложение с тех пор активно развивалось и даже сегодня рекомендуется многими «экспертами» для применения. Более того, у приложения появилось несколько аналогов (например, sEFix), а многие создатели скриптов/инструментов для ускорения до сих пор включают подобную функциональность в свои творения. Иногда это тот же самый rngd, иногда — демон haveged, иногда просто симлинк /dev/urandom на /dev/random.
Все, кто пробовал, наперебой кричат об эффективности решения, однако, если верить Рикарду Серкейре (Ricardo Cerqueira) из компании Cyanogen, в современных версиях Android /dev/random используется всего тремя компонентами: libcrypto (для шифрования SSL-соединений, генерации ключей SSH и так далее), wpa_supplicant/hostapd (для генерации WEP/WPA-ключей) и несколькими библиотеками для генерации случайных ID при создании файловых систем ext2/3/4.
Эффективность приложения в современном Android, по его мнению, связана вовсе не с пополнением пула /dev/random, а с тем, что rngd постоянно пробуждает устройство и заставляет его повышать частоту процессора, что позитивно сказывается на производительности и негативно на батарее.
Вердикт: плацебо.
Odex
Стоковые прошивки смартфонов всегда одексированы. Это значит, что наряду со стандартными для Android пакетами приложений в формате APK в каталогах /system/app/ и /system/priv-app/ (начиная с KitKat) также находятся одноименные файлы с расширением odex. Они содержат так называемый оптимизированный байт-код приложения, уже прошедший через верификатор и оптимизатор виртуальной машины и записанный в обособленный файл (это делается с помощью утилиты dexopt).
Смысл существования файлов odex в том, чтобы разгрузить виртуальную машину и таким образом ускорить запуск приложений (стоковых). С другой стороны, файлы odex мешают вносить в прошивку модификации, создают проблемы с обновлением, и по этой причине многие кастомные ROM’ы (включая CyanogenMod) распространяются без них. Вернуть (точнее, сгенерировать) файлы odex можно разными способами, в том числе с помощью простых утилит/скриптов вроде Odexer Tool. Пользоваться ими легко, и многие «эксперты» советуют это делать.
Проблема только в том, что это чистейшее плацебо. Не обнаружив odex-файлов в каталоге /system, система сама создаст их при следующей загрузке и поместит в каталог /system/dalvik-cache/. Именно этим она занимается, когда при загрузке новой прошивки на экране появляется сообщение «Идет оптимизация приложений…». В отношении приложений из маркета это тоже, кстати, работает. Но на этапе установки софта.
Вердикт: плацебо.
Твики lowmemorykiller
Реализация многозадачности в Android сильно отличается от других мобильных ОС и основана на классической модели. Приложения могут спокойно работать в фоне, в системе нет никаких ограничений на их количество, функциональность при переходе к фоновому исполнению не урезается. Все, как на десктопе, за исключением одной детали: система имеет полное право убить любое фоновое приложение в случае недостатка оперативной памяти или (начиная с KitKat) излишней жадности приложения к ресурсам.
Этот механизм, названный lowmemorykiller, был придуман для того, чтобы, сохраняя черты полноценной многозадачной ОС, Android мог нормально жить в условиях ограниченного объема памяти и отсутствующего swap-раздела. Пользователь может спокойно запускать любые приложения и быстро переключаться между ними, а система сама позаботится о завершении давно не используемых приложений и о том, чтобы в устройстве всегда оставалась свободная память.
В первые годы существования Android назначение данного механизма для многих пользователей было непонятным, поэтому стали популярными так называемые таск-киллеры — приложения, которые время от времени просыпались и завершали все фоновые приложения. Профитом в данном случае считалось большое количество свободной оперативки, что воспринималось как плюс, хотя никаких плюсов в этом, конечно же, не было. Зато было много минусов в виде более долгого переключения между приложениями, повышенного расхода заряда батареи и проблем c пробуждением владельца по утрам (будильник тоже убивался).
Со временем понимание принципов многозадачности пришло, и от таск-киллеров постепенно отказались. Однако их быстро сменил другой тренд — тюнинг самого механизма lowmemorykiller (например, с помощью приложения MinFreeManager). Основная идея метода в том, чтобы приподнять границы заполнения оперативной памяти, при достижении которых система начнет убивать фоновые приложения. Этакий способ «и нам и вам», который позволяет освободить немного памяти штатными средствами, не нарушая идей многозадачности Android.
Но к чему это в итоге приводит? Допустим, стандартные значения границ заполнения памяти — это 4, 8, 12, 24, 32 и 40 Мб, то есть при достижении свободного объема памяти 40 Мб будет убито одно из кешированных приложений (загружено в памяти, но не запущено, это такая оптимизация Android), при 32 — Content Provider, не имеющий клиентов, 24 — одно из редко используемых фоновых приложений, затем в расход идут сервисные процессы приложений (например, сервис музыкального проигрывателя), видимые на экране приложения и текущее запущенное приложение. Разница между последними двумя в том, что «текущее» — это приложение, с которым в данный момент имеет дело юзер, а «видимое» — это то, что, например, имеет уведомление в строке состояния или отображает поверх экрана какую-либо инфу.
В целом все это значит, что в смартфоне всегда будет свободно 40 Мб памяти, которых вполне достаточно для того, чтобы вместить еще одно приложение, после чего проснется поток LKM и начнет очистку памяти. Все ОK, все довольны. Система по максимуму использует память. А теперь представим, что будет, если юзер воспользуется советом доморощенного «эксперта» и поднимет эти значения так, что последнее будет составлять, ну, допустим, 100 Мб (обычно повышаются только три последних значения). В этом случае произойдет одна простая вещь: юзер потеряет 100 – 40 = 60 Мб памяти устройства. Вместо того чтобы использовать это пространство для хранения фоновых приложений, что полезно, так как сокращает время переключения на них и заряд батареи, система будет оставлять его свободным непонятно для чего.
Справедливости ради стоит сказать, что тюнинг LKM может быть полезен для девайсов с совсем уж небольшим объемом памяти (меньше 512) и Android 4.X на борту или для временного увеличения порогов. Некоторые разработчики твиков прямо рекомендуют использовать «агрессивные» настройки только в случае запуска тяжелого софта вроде hi-end игр, а все остальное время оставаться на стандартных. В этом действительно есть смысл.
Вердикт: лучше не трогать.
Твики I/O
В скриптах, публикуемых на форумах, можно часто встретить твики подсистемы ввода-вывода. Например, в том же скрипте ThunderBolt! есть следующие строки:
echo 0 > $i/queue/rotational; echo 1024 > $i/queue/nr_requests;Первая дает планировщику ввода-вывода понять, что он имеет дело с твердотельным диском, вторая увеличивает максимальный размер очереди ввода-вывода с 128 до 1024 (переменная $i в командах содержит путь к дереву блочного устройства в /sys, например /sys/block/mmcblk0/, скрипт проходит по ним в цикле). Далее по тексту можно встретить следующие строки, относящиеся к планировщику CFQ:
echo 1 > $i/queue/iosched/back_seek_penalty; echo 1 > $i/queue/iosched/low_latency; echo 1 > $i/queue/iosched/slice_idle;Далее следует еще несколько строк, относящихся к другим планировщикам (кстати, обрати внимание на совершенно лишние точки с запятой в конце команд). Что во всех этих строках не так? Первые две команды бессмысленны по двум причинам:
- Планировщики I/O в современном ядре Linux сами способны понять, с каким типом носителя информации они имеют дело.
- Такая длинная очередь ввода-вывода (1024) совершенно бессмысленна на смартфоне. Более того, она бессмысленна даже на десктопе и применяется на высоконагруженных серверах (из рекомендаций по настройке которых она, видимо, и попала в данный скрипт).
Последние три бессмысленны по той простой причине, что для смартфона, где фактически нет разделения приложений по приоритетам на ввод-вывод и нет механических накопителей, лучший планировщик — это noop, то есть простая FIFO-очередь — кто первый обратился к памяти, тот и получил доступ. И у данного планировщика нет каких-то особенных настроек. Поэтому все эти многоэкранные списки команд лучше заменить на один простой цикл:
for i in /sys/block/mmc*; do echo noop > $i/queue/scheduler echo 0 > $i/queue/iostats doneКроме включения планировщика noop, для всех накопителей он отключает накопление статистики I/O, что также должно позитивно сказаться на производительности (хотя это всего лишь капля в море, которая будет совершенно незаметна).
Еще один твик, который часто можно найти в скриптах тюнинга производительности, — это увеличение значения readahead для карты памяти до 2 Мб. Механизм readahead предназначен для заблаговременного чтения данных с носителя еще до того, как приложение запросит доступ к этим данным. Если ядро видит, что кто-то достаточно долго читает данные с носителя, оно пытается вычислить, какие данные понадобятся приложению в дальнейшем, и заранее загрузит их в оперативку, позволяя таким образом сократить время их отдачи.
Звучит круто, но, как показывает практика, алгоритм readahead очень часто ошибается, что приводит к лишним операциям ввода-вывода и расходу оперативной памяти. Высокие значения readahead (1–8 Мб) рекомендуются к применению на RAID-массивах, тогда как на десктопе или смартфоне лучше все оставить как есть, то есть 128 Кб.
Изменить планировщик ввода-вывода можно с помощью Trickster ModВердикт: кроме noop, не нужно ничего.
Твики системы управления виртуальной памятью
Кроме подсистемы I/O, принято также тюнинговать подсистему управления виртуальной памятью. Зачастую изменению подвергаются только две переменные ядра: vm.dirty_background_ratio и vm.dirty_ratio, которые позволяют регулировать размер буферов для хранения так называемых грязных данных, то есть тех данных, которые были записаны на диск приложением, но еще до сих пор находятся в оперативной памяти и ждут, пока они будут записаны на диск.
Стандартные значения этих переменных в десктопных Linux-дистрибутивах и Android примерно следующие:
* vm.dirty_background_ratio = 10 * vm.dirty_ratio = 20Это значит, что при достижении размера буфера «грязных» данных в 10% от всего объема оперативки проснется ядерный поток pdflush и начнет записывать данные на диск. Если же операции записи данных на диск будут слишком интенсивными и, даже несмотря на работу pdflush, буфер будет продолжать расти, то при достижении 20% от объема оперативки система переключит все последующие операции записи в синхронный режим (без предварительной буферизации) и работа пишущих на диск приложений будет заблокирована до того момента, пока данные не будут записаны на диск (в терминологии Android это принято называть лагом).
При этом важно понимать, что, даже если размер буфера не достиг 10%, система так или иначе запустит поток pdflush через 30 с. Что нам дают эти знания? Фактически ничего, что мы могли бы использовать в своих целях. Комбинация 10/20% вполне разумна и, например, на смартфоне с 1 Гб памяти составляет примерно 100/200 Мб памяти, чего более чем достаточно в условиях редких всплесков записи, скорость которых зачастую ниже скорости записи в системную NAND-память или SD-карту (при установке софта или копировании файлов с компа). Но создатели скриптов оптимизации с этим, конечно же, не согласны.
Например, в скрипте Xplix можно найти примерно такие строки (в оригинале они намного длиннее из-за проверок на количество оперативной памяти и использования BusyBox):
sysctl -w vm.dirty_background_ratio=50 sysctl -w vm.dirty_ratio=90Данные команды применяются к устройствам с 1 Гб памяти, то есть устанавливают лимиты «грязного» буфера, равные (примерно) 500/900 Мб. Такие высокие значения абсолютно бессмысленны для смартфона, так как работают только в условиях постоянной интенсивной записи на диск, то есть опять же для высоконагруженного сервера. В ситуации со смартфоном они будут ничем не лучше стандартных. Кстати, в скрипте ThunderBolt! применяются гораздо более разумные (и близкие к стандартным) значения, но я сомневаюсь, что от их применения пользователь заметит хоть какую-то разницу:
if [ "$mem" -lt 524288 ];then sysctl -w vm.dirty_background_ratio=15; sysctl -w vm.dirty_ratio=30; elif [ "$mem" -lt 1049776 ];then sysctl -w vm.dirty_background_ratio=10; sysctl -w vm.dirty_ratio=20; else sysctl -w vm.dirty_background_ratio=5; sysctl -w vm.dirty_ratio=10; fi;Первые две команды выполняются на смартфонах с 512 Мб оперативки, вторые — с 1 Гб, третьи — с более чем 1 Гб. Но на самом деле есть только одна причина изменять стандартные значения — девайс с очень медленной внутренней памятью и/или картой памяти (привет китайцам). В этом случае разумно разнести значения переменных, то есть сделать примерно так:
sysctl -w vm.dirty_background_ratio=10 sysctl -w vm.dirty_ratio=60Тогда при резких всплесках операций записи система, не успевая записывать данные на диск, до последнего не будет переключаться на синхронный режим, что позволит уменьшить лаги приложений при выполнении записи.
Вердикт: лучше не трогать.
Выводы
Существует огромное количество и более мелких оптимизаций, включая «тюнинг» сетевого стека, изменение переменных ядра Linux и Android (build.prop), но 90% из них не оказывают никакого влияния на реальную производительность устройства, а остальные 10% либо улучшают одни аспекты поведения устройства в ущерб других, либо настолько незначительно повышают производительность, что ты этого даже не заметишь. Из того, что реально действует, можно отметить следующее:
- Разгон. Небольшой разгон позволяет повысить производительность, а андервольтинг — сохранить немного батарейки.
- Оптимизация баз данных. Сильно сомневаюсь, что это даст заметный прирост скорости работы, но теория говорит нам, что работать должно.
- Zipalign. Забавно, но, несмотря на встроенную в Android SDK функцию выравнивания контента внутри APK-файлов, в маркете можно найти большое количество софта, не прошедшего через zipalign.
- Отключение ненужных системных сервисов, удаление неиспользуемых системных и редко используемых сторонних приложений (об этом я уже писал в одной из прошлых статей).
- Кастомное ядро с оптимизациями под конкретный девайс (опять же не все ядра одинаково хороши).
- Уже описанный планировщик ввода-вывода noop.
- Алгоритм насыщения TCP westwood+. Есть доказательства, что в беспроводных сетях он намного эффективнее применяемого в Android по умолчанию Cubic. Доступен в кастомных ядрах.
Бесполезные настройки build.prop
LaraCraft304 с форумов XDA Developers провела исследование и выяснила, что внушительное количество настроек /system/build.prop, которые рекомендуют к применению «эксперты», вообще не существуют в исходном тексте AOSP и CyanogenMod. Вот их список:
- ro.ril.disable.power.collapse
- ro.mot.eri.losalert.delay
- ro.config.hw_fast_dormancy
- ro.config.hw_power_saving
- windowsmgr.max_events_per_sec
- persist.cust.tel.eons
- ro.max.fling_velocity
- ro.min.fling_velocity
- ro.kernel.checkjni
- dalvik.vm.verify-bytecode
- debug.performance.tuning
- video.accelerate.hw
- ro.media.dec.jpeg.memcap
- ro.config.nocheckin
- profiler.force_disable_ulog
- profiler.force_disable_err_rpt
- ersist.sys.shutdown.mode
- ro.HOME_APP_ADJ
Оптимизация баз данных
Скрипт для оптимизации баз данных настроек системы и приложений. Для работы, естественно, требуется root и BusyBox.
#!/system/bin/shfor i in \`busybox find /data -iname «*.db»`;do \/system/xbin/sqlite3 $i ‘VACUUM;’;/system/xbin/sqlite3 $i ‘REINDEX;’;done;
xakep.ru
Как убрать оптимизацию приложений Android при включении
Если вы заметили, что ваш смартфон после каждой перезагрузки телефона показывает сообщение про оптимизацию приложений Android, стоит задуматься о том, чтобы исправить эту проблему. Как правило, первичная оптимизация происходит только при первом включении смартфона, а также после сбора настроек до заводских. При этом часто процесс запускается после перепрошивки. В остальных случаях оптимизация для приложений не совсем обязательна, поэтому стоит ее отключить.Решаем проблему, почистив кеш
Иногда после перезагрузки телефон попросту виснет или же при каждом включении выполняет запуск оптимизации. Весь процесс может занять до 30 минут, поэтому не очень удобно ждать окончания этого процесса при каждом включении смартфона. Пока приложения не оптимизированы, телефон зависает и работает медленнее. Самое простое решение, если вы хотите отключить оптимизацию при каждом включении, — это чистка кеша.
Произвести ее можно вручную в подразделе «Приложения» в настройках телефона. Также можно скачать специальные программы на Android. Оптимизация приложений может прекратиться после установки и грамотного использования, например, Clean Master.
Если это не помогло, можно почистить cash более радикальным способом через режим восстановления.
Рассмотрим один из вариантов чистки кеша:
- Необходимо выключить телефон.
- Удерживайте кнопку «Уменьшение звука» и кнопку включения одновременно.
- В появившемся окошке выберите подпункт Recovery.
- В том меню, которое появится на этот раз, выберите подпункт «Wipe cache partition».
- Далее произойдет очистка кеш-памяти. Это займет некоторое время. Никакие важные данные и файлы, которые вы храните на телефоне, не будут удалены.
- Телефон нужно будет перезагрузить после завершения процесса. Для этого в меню выберите подпункт «Reboot system now».
После всех манипуляций гаджет перезагрузится. Вы сразу сможете проверить, появилось ли сообщение про оптимизацию приложений или ее удалось отключить. Если оптимизация включается опять, стоит рассмотреть другие решения проблемы.
В зависимости от модели телефона, вход в режим восстановления может различаться. Если комбинация «Кнопка включения + клавиша увеличения громкости» не сработали, значит вам может помочь один из следующих вариантов:
- Кнопка уменьшения громкости и клавиша для включения устройства.
- Центральная кнопка и клавиша включения-выключений.
- Центральная кнопка, кнопка включения и клавиша увеличения громкости.
Если и вышеперечисленные комбинации не подошли, то поищите нужное сочетание клавиш в инструкции или на официальном сайте производителя смартфона.
Чтобы не искать подходящие комбинации клавиш, можно скачать специальные программы на Андроид, автоматически включающие режим «Рекавери». Одна из самых известных программ – Quick Boot. Установите ее на смартфон, а после запуска она автоматически сможет перенести вас в режиме Recovery. Уже в меню приложения можно выбрать нужный раздел. Очистить кеш позволит графа Wipe cache partition. Все остальные подпункты меню тоже называются так же, как и в стандартном Recovery-режиме.
Как отключить оптимизацию: сбрасываем настройки до заводских
Если висящее сообщение снова появляется после каждого перезапуска, при этом чистка кеша не помогла, тогда стоит попробовать возврат устройства к заводским настройкам. Это решение позволит оптимизировать работу телефона.
Помните, что при hard reset гаджету придется удалить все настройки и приложения с телефона, а во все учетные записи придется заходить заново. Сделайте резервную копию всех данных, после чего воспользуйтесь следующей инструкцией:
- Выключите устройство, а затем перейдите в режим восстановления. Для этого нужно использовать один из способов, перечисленных выше. Для большинства устройств подойдет метод «Кнопка уменьшения звука + кнопка выключения». Передвигаться между подпунктами меню можно с помощью клавиш, которые регулируют звук.
- Далее перейдите к пункту Recovery. Чтобы сделать выбор, нажмите кнопку вкл.
- В новом подменю найдите и нажмите «Wipe data/factory reset».
- Процесс обнуления настроек займет какое-то время, обычно это затягивается не менее чем на 10 минут, поэтому наберитесь терпения.
- Смартфон нужно перезагрузить после завершения процесса. Для этого выберите подпункт Reboot system now.
Сброс настроек должен не только помочь избавиться от постоянной оптимизации приложений после включения, но и сможет дополнительно увеличить скорость работы. Такое решение имеет единственный минус – удаление всех пользовательских файлов и настроек.
Решить этот вопрос можно при помощи Android Backup Service. Создать резервную копию всех своих данных можно при помощи следующих шагов:
- Зайдите в раздел «Настройки».
- Выберите подменю «Личные данные», а затем нажмите на подраздел «Восстановление и сброс».
- Включите «Резервирование данных».
После этого программа выведет окно, в котором будет перечень всех имеющихся на телефоне данных. Выберите те, которые нужно скопировать, и нажмите на кнопку «Запуск пакетной обработки приложений». Запускаемое резервное копирование займет какое-то время, не перезагружайте телефон. После чего в открывшейся папке будут видны все сохраненные файлы. Помните, что в этой программе можно создать резервные копии всех приложений с внесенными в них данными, но она не сохраняет другие файлы.
Если ничего не помогло
Если проблема не была решена, попробуйте обратиться в сервисный сервис. В некоторых случаях помогает только перепрошивка телефона. Прежде чем нести телефон в ремонт, скопируйте все свои данные (музыку, видео, документы) на другое устройство или выполните резервное копирование.
Пожаловаться на контентpoandroidam.ru
Бесконечная Оптимизация приложений на Android
В данной статье я расскажу что делать, когда на вашем телефоне или планшете Android пишет «Оптимизация приложений» и дальше процесс не двигается, т.е. идет бесконечно.
Данная статья подходит для всех брендов, выпускающих смартфоны на Android 9/8/7/6: Samsung, HTC, Lenovo, LG, Sony, ZTE, Huawei, Meizu, Fly, Alcatel, Xiaomi, Nokia и прочие. Мы не несем ответственности за ваши действия.
Бесконечная «Оптимизация приложений»
При первом включении смартфона Андроид и после проведения сброса к заводским настройкам, перепрошивки гаджета, происходит оптимизация приложений. Данная процедура позволяет имеющееся программное обеспечение настроить под новые условия.
Многие пользователи сталкиваются с ошибкой, когда после каждой перезагрузки смартфона этот процесс запускается. Проблема состоит в том, что длиться оптимизация может до 30 минут, тратя заряд батареи и время пользователя. Нередко после завершения процесса гаджет отключается снова и все повторяется по кругу. Давайте рассмотрим способы, как отключить бесконечную оптимизацию на Андроид.
Очистка кэша
Причина проблемы оптимизации Андроид приложений может заключаться во временных файлах. Процесс очистки кэш памяти удаляет временные файлы, что решает проблему. Настройки и личные файлы после очистки кэш памяти останутся нетронутыми.
Осуществляется чистка кэш памяти через режим восстановления. Для каждого отдельного смартфона используется своя комбинация клавиш для перехода в данный режим. Рассмотрим на примере телефона Moto X пример очистки кэш памяти.
Нужна помощь?Не знаешь как решить проблему в работе своего гаджета и нужен совет специалиста? Напиши нам »
Выполняем следующие шаги:
- Сначала необходимо выключить телефон.
- Затем нажимаем и удерживаем кнопку «Включения» и кнопку «Громкость вниз».
- Через несколько секунд отобразится меню, где следует выбрать «Recovery».
- Потом будет продемонстрирована строчка «Нет команды». Просто нажимаем на кнопку «Включения».
- В появившемся меню выбираем раздел «Wipe cache partition».
- Когда процесс очистки кэш памяти завершится, нужно перезагрузить телефон. Для этого выбираем команду «Reboot system now».
Гаджет автоматически перезагрузится, после чего можно проверить, пропала или нет оптимизация приложений Андроид. Если проблема еще присутствует, то стоит выполнить сброс к заводским настройкам.
Читайте Android не загружается в режиме Recovery
Сброс настроек до заводских
Этот способ также способен решить вопрос бесконечной оптимизации приложений на устройстве Андроид. Ошибку можно убрать одним из двух путей. Сброс настроек можно выполнить через настройки смартфона и Recovery.
Более подробно мы рассказали об этом в статье Как сбросить настройки до заводских на Android
Меню Андроид
Сброс настроек через меню Андроид более простой метод. Если не будет результата, то необходимо использовать более радикальные меры. При любом способе сброса настроек нужно сохранить свою личную информацию, чтобы при форматировании системы ее не утратить.
Алгоритм действий:
- Переходим к телефонным настройкам. Для этого опускаем вниз строку уведомлений с помощью свайпа и тапаем по иконке шестеренки. Данные операции проводятся на операционной системе Андроид 7.1. Для других версий системы последовательность действий имеет похожий вид. Увеличить
- Теперь по меню двигаемся вниз, пока не отыщем необходимый пункт. Он показан на скриншоте ниже. Увеличить
- Затем просто нажимаем на раздел «Сброс настроек». Увеличить
- Стоит еще раз напомнить, что вся информация с внутренней памяти смартфона будет утеряна. При уже созданной резервной копии необходимо отметить пункт, представленный на скриншоте ниже. Увеличить
- В завершение нажимаем кнопку «Стереть все».
Затем начнется удаление пользовательских данных, а девайс возвратится к заводскому состоянию. Ожидаем завершение процесса и перезагрузки смартфона.
Recovery
Выше мы рассмотрели, как осуществить очистку кэша с помощью системного Рекавери. Там имеется раздел для проведения Hard Reset или жесткого сброса. На скриншоте ниже показан этот пункт меню.
УвеличитьКак и при очистке кэша, выбираем нужный нам пункт «Wipe data/factory reset» и активируем его. Затем ожидаем перезагрузки устройства и его запуск. Во время первого включения устройство следует настроить заново.
Если оптимизация Андроид приложений происходит по-прежнему, значит следует обратиться в сервисный центр. Скорее всего, здесь более серьезная проблема, чем обычная ошибка.
На Android бесконечная «Оптимизация приложений» и не включается телефон
4.6 (92.86%) 14 чел.androproblem.ru
Оптимизация приложений Android при включении: как убрать
Иногда, после перезагрузки, наш Android-смартфон производит оптимизацию приложений. Все бы ничего, но, если это происходит постоянно, проблему нужно решать. Дело в том, что такой процесс должен запускаться лишь после перепрошивки устройства или его сброса к заводским настройкам. В данной статье мы расскажем, как убрать бесконечную оптимизацию приложений при включении гаджета.
Исправляем ошибку
Существует сразу несколько вариантов, которые могут помочь нам исправить ситуацию. Первым будет более простой способ, второй – чуть сложнее, но и действеннее. Если один не решит поставленную задачу, прибегайте к следующему.
Очистка кэша
Кэш в Андроид можно очистить для каждого приложения по отдельности или для всех сразу. Первый вариант нам не поможет, поэтому прибегнем ко второму. Изначально нужно перейти к Recovery. Это специальный PreOS-режим, в котором можно совершать любые действия над ОС, включая ее перепрошивку.
Для перехода в Рекавери нужно выключить устройство и зажать определенную комбинацию клавиш. На каждом смартфоне в зависимости от версии Google Android и фирмы производителя могут быть разные сочетания. Искать именно свой вариант нужно в сети, обычно их приводят на тематических форумах или на официальном сайте Престижио, Asus, Micromax, HTC, BlackView, Nubia и т. д.
Например, на Samsung и некоторых других брендах запустить Recovery можно нажатием одновременно кнопки добавления громкости и включения устройства. Естественно из-под выключенного состояния.
После того, как мы попадем в режим рекавери, нужно выбрать пункт, который отмечен у нас на скриншоте. Далее подтвердите выбор.
Для того чтобы осуществлять навигацию в данном режиме, нужно использовать кнопки «качельки» громкости, а выбор осуществляется нажатием клавиши питания.
После этого телефон должен перезагрузиться и при запуске произвести оптимизацию приложений. В дальнейшем она включаться не будет.
Если описанный вариант вам не помог, переходите к следующему.
Сброс настроек до заводских
Данный способ тоже может помочь решить вопрос постоянной оптимизации приложений в Андроид. Убрать ее при включении можно двумя путями. Мы посмотрим, как это делается через настройки телефона и Recovery.
Через меню Андроид
Так как первый вариант проще, рассмотрим сначала его. И, если результата добиться не удастся, перейдем к более радикальным мерам.
Внимание! И в том и другом случаях обязательно сохраните ваши данные, дабы не утратить их при форматировании системы.
- Сначала переходим к настройкам телефона или, как в нашем случае, планшета. Для этого опустите строку уведомлений вниз при помощи свайпа и тапните по иконке шестеренки. Все приведенные операции ведутся на базе OS Android 7.1. В других системах последовательность действий выглядит похожим образом.
- Двигаемся по меню вниз до тех пор, пока не найдем нужный пункт. Мы отметили его на картинке.
- На следующем этапе просто жмем по пункту меню «Сброс настроек».
- В очередной раз и мы, и разработчики устройства напоминаем вам о том, что все данные во внутренней памяти телефона будут утеряны. Если резервная копия уже создана, жмем отмеченный на скриншоте пункт.
- В завершение жмем единственную кнопку с надписью: «СТЕРЕТЬ ВСЕ».
После этого начнется удаление пользовательских данных и возврат гаджета к заводскому состоянию. Ждем окончания процесса и перезагрузки телефона.
При помощи Recovery
Выше мы уже описывали, как очистить кэш при помощи системного Рекавери. В нем же есть раздел для так называемого жесткого сброса или Hard Reset. На скриншоте ниже вы видите его перед собой.
Точно так же, как и в случае с кэшем, выбираем пункт и активируем его. Далее ждем перезагрузки и запуска устройства. При первом включении его нужно будет настроить заново.
Подводим итоги
Готово. Вопрос отключения оптимизации программ Андроид при его включении решен полностью. Надеемся статья оказалась для вас полезной. Любые вопросы, отзывы и комментарии можно оставить немного ниже. Для этого есть специальная форма.
os-helper.ru
Оптимизация Android-устройств без использования посторонних программ
При работе смартфона на платформе Android, рано или поздно замечаешь такую проблему, как замедление работы системы. Я уже не раз сталкивался с данной ситуацией, даже приходилось делать сброс на заводские настройки, после чего смарт реально оживал и, какое-то время работал как новенький, пока в дальнейшем снова не налипали на него «тормоза».
В чём причина замедления работы Android-устройств. Это нехватка системных ресурсов для обеспечения нормальной работы операционной системы и тех программ которые установлены на вашем устройстве. Для нормальной работы Android-устройств, необходимо всего лишь освободить достаточно ресурсов чтобы ваш смарт снова начал «летать». Это как с оптимизацией Windows.
Доброго времени суток! На блоге я уже писал статью про очистку Android-устройств, такими программами как Ccleaner, Clean Master. Конечно же эти программы ресурсы системы и всяческий мусор очистят, но при дальнейшем пользовании аппарата они снова будут забиты и опять же вызовут «тормоза» в системе. Для долгосрочного эффекта работы Android-устройств необходимо придерживаться несколько простых, но в то-же время очень эффективных правил.
Удаление не нужных программ:
В Android-устройстве по умолчанию установлено множество программ. Одни из которых работают в фоновом режиме, делают синхронизацию с удалённым сервером, ну а что если вы не пользуйтесь данной программой, получается что она впустую тратит ресурсы вашего устройства, хотя можно было их потратить на более полезное приложение. Я думаю такие программы нужно удалять не задумываясь.
Удаляя не нужные программы вы не только освобождаете место в памяти устройства, но и освобождаете оперативную память, что тоже не мало важно. Фото, видео желательно тоже не хранить в памяти устройства, тем самым вы освободите больше памяти для кэширования данных приложений.
Фоновая синхронизация:
Сейчас у многих возник вопрос, не все же программы можно удалить, но им можно запретить фоновую синхронизацию через мобильный интернет.
Для отключения синхронизации в фоновом режиме переходим в «Настройки», затем «Контроль трафика», или что-то подобное. Самые активные приложения расположены в самом верху, их мы и будем отключать. Тапаем по выбранному приложению и, тут необходимо активировать пункт «Ограничить фоновый режим».
Как уменьшить потребление памяти и процессора в Android-устройстве:
Вообще этот метод будет полезным тем пользователям, у которых на смарте установлено большое количество программ, игр. Для уменьшения потребления памяти и процессора в Андроиде, для начала необходимо активировать пункт «Для разработчиков» (или что-то подобное).
Заходим в «Настройки», затем находим пункт «Об устройстве» (или что-то похожее), теперь по пункту «Номер сборки» тапаем раз 8-10 в быстром тэмпе, тем самым активируем пункт «Для разработчиков».
Снова выходим в «Настройки», где в самом низу должен быть пункт «Для разработчиков» (или что-то похожее).
Заходим в этот самый пункт, ищем раздел «Приложения», пункт «Лимит фоновых процессов» (или аналог ему).
Идём внутрь «Лимита фоновых процессов» и, выставляем значения в два/три штуки. Это значительно скажется на потреблении оперативной памяти и процессора.
Данный способ для большинства системных служб скорее всего не работает, а работать будет только со сторонними приложениями. Если возникнут какие-либо проблемы с данным способом, то необходимо будет увеличить количество процессов, или отключить настройку полностью.
С Уважением, МАКС!!!
soft-click.ru
оптимизация. Обзор программ, инструкция и рекомендации
Совершенно неважно, сколько ядер имеет процессор мобильного устройства и каков объем оперативной памяти в устройстве, всегда нужно быть готовым к тому, когда его быстродействие перестанет быть оптимальным. Иногда пользователи жалуются на то, что планшеты или смартфоны, выпущенные пару лет назад, не соответствуют требованиям современных приложений и операционных систем. В итоге все пользователи приходят к одному решению – поможет оптимизация операционной системы Android. В данной статье будет описано несколько способов оптимизации системы.
Способы оптимизации
Прежде всего, хотелось бы упомянуть о том, что разработчиками и пользователями сегодня создается огромное количество программ и утилит, которые могут помочь ускорить работоспособность устройства. Эффективностью же на самом деле обладает не более 5-10% таких приложений. Ниже будут указаны самые эффективные из них. Помимо этого, также существует ряд способов, при помощи которых можно добиться лучшей оптимизации Android. Данные способы предполагают всего лишь детальную настройку системы через средства разработчика. Android представляет собой открытую операционную систему. Поэтому каждый может вносить изменения в операционную систему.
Оптимизация при помощи сторонних программ
С диспетчером мы разобрались. Теперь пришло время поговорить об ускорении работы устройства при помощи сторонних программ. Как уже было сказано ранее, эффективностью обладают всего 10% приложений для оптимизации. Проблема заключается в том, что чаще всего подобные утилиты просто очищают диспетчер задач. На этом функционал заканчивается. Также и существуют более радикальные средства, которые могут, например, очистить операционную систему от мусора, который накопился вследствие долгой работы в интернете с неизвестными источниками. Чтобы правильно выбрать такую утилиту, необходимо проанализировать рейтинг приложений в Playmarket. Лучше всего будет использовать самую популярную по числу скачиваний программу для оптимизации Android.
«Диспетчер задач»
Любое устройство, которое работает под управлением операционной системы Android, начиная с версии 4.0, имеет так называемый «Диспетчер окон рабочего стола» или «Диспетчер задач». Он необходимо для того, чтобы быстро переключаться между различными приложениями, запущенными на устройстве на базе Android. Как многие утверждают, оптимизация устройства напрямую зависит от нахождения окон в данном приложении. Суть заключается в следующем: если удалить из диспетчера все приложения, которые в нем находятся, устройство будет работать быстрее. В этом утверждении на самом деле только часть правды. Проблема заключается в том, что в «Диспетчере задач» указываются только те приложения, которые использовались на устройстве ранее, но были закрыты или свернуты. Если у гаджета устройства достаточно оперативной памяти, то данная игра или программа действительно будет свернута, оставив запущенным тот момент, на котором она свернулась. Оптимизация устройства на базе Androidв этом случае будет напрямую зависеть от выбрасывания данного приложения из «Диспетчера задач». Когда программа будет закрыта, оперативная память будет освобождена и устройство будет меньше «думать». Совсем другое дело, когда устройству не хватает оперативной памяти для того, чтобы держать приложение в фоновом режиме. Именно тогда в диспетчере задач можно будет увидеть только отсылки к играм и программам, которые были запущены на устройстве ранее. Закрытие подобных окон не приведет к ускорению работоспособности планшета или смартфона.
Ограничение фоновых процессов
Из описанного ранее способа становится ясно, что лучшим инструментом для оптимизации устройства на базе «Android» является сама операционная система со своими встроенными средствами. Данный способ будет оптимальным для тех пользователей, которые имеют большое количество оперативной памяти, но не хотят «бороться» с диспетчером задач. Приведем краткое описание второго способа. Первым делом, необходимо зайти в настройки устройства и выбрать пункт «Об устройстве». В открытом меню необходимо выбрать строку «Номер сборки». Далее необходимо семь раз подряд нажать на данный пункт. После этого должно появиться сообщение – «Вы стали разработчиком!». Затем вам нужно вернуться в главное меню настроек и выбрать там пункт «Для разработчиков». Здесь нужно выбрать вкладку «Лимит фоновых процессов». Здесь следует указать максимальное число запущенных фоновых процессов. При выборе пункта «Без фоновых процессов», устройство больше не сможет хранить данные о том, на каком этапе приложение находилось до закрытия. В конечном итоге пользователю придется запускать каждое приложение или игру заново, тратя на это время.
Анимация
Любое устройство на базе операционной системы Androidпрежде всего настроено на работу с использованием красивых переходов и анимации. Однако эти процессы занимают много времени даже на достаточно мощных устройствах, не говоря уже о более бюджетных аппаратах. Можно попробовать отключить анимацию или ускорить ее, чтобы найти компромисс. Чтобы выполнить данное действие, необходимо будет выполнить всего пару простых шагов. Как и в описанном ранее процессе, сперва необходимо получить доступ к меню разработчика. В меню «Для разработчиков» необходимо найти пункты «Переход: масштаб», «Окно: масштаб» и «Скорость анимации». Если требуется отключить совершенно все эффекты переходов, то нужно выбрать в каждом пункте значение 0. Если желаемым эффектом является оптимизация операционной системы Androidбез отключения эффектов, то необходимо выбрать значение 0,5.
Рекомендации
Понять, насколько сложна операционная система Android, очень сложно. Ее оптимизация является отдельным вопросом, ответ на который не всегда можно получить простым скачиванием утилиты или отключением анимации. В данном случае многое будет зависеть от мелочей, которые на первый взгляд незаметны. Однако существует целый ряд рекомендаций, следуя которым можно ускорить работу устройства. Приведем некоторые из них.
- Не используйте «живые» обои. Это может в прямом смысле убить быстродействие и серьезно сказаться на уроне энергосбережения.
- Избегайте использования виджетов. Те, которые редко используются, лучше вообще отключить.
- Отключите кэшируемые процессы и приложения, которые запущены системой.
- Не захламляйте файловую систему ненужной информацией и файлами. По возможности вовремя удаляйте неиспользуемые приложения.
Результат
Чтобы понять, помогли ли описанные выше действия оптимизировать работу устройства, необходимо использовать специальные утилиты – бенчмарки. Скачать их можно из приложения Playmarket. Чаще всего они распространяются бесплатно. Принцип работы таких приложений заключается в оценке быстроты выполнения тех или иных процессов устройством. Чем больше оценка, тем быстрее работает устройство, и тем меньше зависаний наблюдается. Прежде чем выполнять какие-либо операции с устройством, необходимо скачать бенчмарки и оценить его работоспособность. После выполненных процедур необходимо снова запустить тест и посмотреть, помогли ли действия увеличить производительность.
computerologia.ru
Ускорение Android: какие методы действительно работают
Операционная система Android завоевывает сегодня все большую популярность, получая прописку в самых различных устройствах, начиная от простейших телефонов и заканчивая мультимедийными приставками и планшетами. Однако далеко не всегда эти устройства имеют самую современную и мощную начинку, поэтому вопрос оптимизации и ускорения Android актуален очень для многих. Поэтому мы хотим вас познакомить с несколькими проверенными способами увеличения быстродействия системы, а также с распространенными мифами на эту тему.
Прежде всего необходимо понимать, что Android коренным образом отличается от Windows, поэтому хорошо знакомые вам методы оптимизации и ускорения системы там не работают. Однако это не останавливает некоторых мошенников, которые активно предлагают различные оптимизаторы, дефрагментаторы и ускорители. Давайте посмотрим, какие методы действительно приносят пользу.
Базовый уровень
1. Отключите живые обои. Да, это красиво, я знаю. Похвастайтесь друзьям и маме, покажите своей девушке, а потом лучше все же поставьте обычную картинку, потому что все эти плавающие рыбки и облака действительно отнимают системные ресурсы.
2. Уберите лишние виджеты и иконки. Каждый виджет на вашем рабочем столе потребляет несколько мегабайт столь необходимой оперативной памяти. Посмотрите на них критически и выгрузите лишнее.
3. Удалите ненужные приложения. Google Play содержит столько хороших программ, большинство из которых совершенно бесплатны. Мало кто удержится от того, что бы не установить десяток-другой «на всякий случай», «потом пригодится». Тем не менее, некоторые из этих программ добавляют виджеты, запускают фоновые процессы и являются, таким образом, ненужными пожирателями ресурсов. Оставьте только действительно нужное.
4. Попробуйте другой браузер. Встроенный браузер Android довольно хорош, однако для медленных устройств возможно более предпочтительным будет Opera Mini, потребляющий значительно меньше ресурсов. Попробуйте также Firefox или Dolphin, эти браузеры могут значительно ускорить просмотр веб-страниц.
Советы для продвинутых (требуются права администратора).
Эти советы требуют понимания и иногда сопряжены с некоторым риском, поэтому адресованы в первую очередь опытным пользователям, не боящимся экспериментов.
1. Разгоните свое устройство. Точно так же как обычный компьютер, ваш телефон или планшет можно разогнать, то есть увеличить частоту процессора. Популярным способом для этого является SetCPU. Перед принятием решения хорошо продумайте все «за» и «против» (увеличение тепловыделения, снижение автономности и т.д.).
2. Попробуйте новую прошивку. Хотя производитель вашего устройства возможно не спешит обновить прошивку, всегда можно попробовать использовать пользовательскую сборку, которая оптимизирована и настроена для вашего телефона или планшета. В случае неудачи всегда можно вернуться на «фирменную» систему.
3. Настройте автостарт программ. На рутированном устройстве возможно применение программ наподобие Autostarts, с помощью которых можно удалить лишние процессы из списка автостартующих.
Ошибочные методы
1. Дефрагментация. Устройствам под управлением Android не требуется дефрагментация. Соответственно все приложения, предлагающие ускорение работы этим способом, не более чем обман.
2. Приложения для управления задачами (Task Manager). Теоретически все эти «таск килеры» делают полезное дело — убивают фоновые задачи и освобождают оперативную память. Однако в реальности все обстоит совершенно иначе. В операционной системе Android используется довольно сложная система управления памятью, значительно отличающаяся от Windows. Те приложения, с которыми вы в данный момент не взаимодействуете, пребывают как бы в «замороженном» состоянии, что позволяет при первом обращении к ним восстановить их состояние практически мгновенно. Если вы их выгружаете из памяти, то последующий их запуск происходит наоборот медленнее, так что общая отзывчивость системы понижается.
А какие проверенные способы ускорения Android знаете вы? Поделитесь с нашими читателями в комментариях?
lifehacker.ru