Советы по улучшению энергосбережения устройств на Android OS

474
.
Инфа взята с 4pda, модераторам убедительная прозьба: закрипите тему, так как многим она пригодится!

Прежде чем задавать вопросы прочитайте полностью "шапку" темы (лучше несколько раз), в противном случае ваши посты будут ИГНОРИРОВАТЬСЯ, а оффтоп УДАЛЯТЬСЯ без предупреждения. Если после прочтения шапки у вас остались вопросы то только тогда вы можете задать свой вопрос, в этом случае вы можете рассчитывать на грамотный ответ. И не забываем изучать всю тему, с коментариями и тд., т.к. половина вновь задаваемых вопросов уже обсуждались.

Проверяем
___________________________________
В начале рассмотрим основную и не всегда очевидную причину быстрого разряда аппарата, нарушение режима энергосбережения в режиме сна.
Для OS Android до версии 2.3. (Читать всем в любом случае, для понимания основной сути)
.
Чтобы понять есть ли у аппарата проблемы с его режимом сна, после дня умеренного использования аппарата в звонилке набираем код *#*#4636#*#* (или пользуемся программой SpareParts), и смотрим пункт "Battery history" ("Журнал аккумулятора" или "Журнал сведений о батарее"). Тут сводится вся информация о потреблении устройством энергии.

Нас интересует в первую очередь пункт первого меню "Other Usage" ("Прочее использование"), он выводит следующие подпункты:


1. Running ("Режим работы" или "Выполняется") -показывает время вне режима ожидание, т.е. всё время активности аппарата, назовём этот параметр просто "Активность"; (в %, при нажатии в мин.)
2. Screen on ("Экран включён") - показывает время работы аппарата с включённым экраном; (в %, при нажатии в мин.)
3. Phone on ("Телефон вкл.") - показывает время разговора по телефону. (в %, при нажатии в мин.)
Второе меню позволяет сортировать данные и выводить их: либо за всё время работы аппарата, либо за время с последней загрузки, либо с последней подзарядки.
Показатели во всех пунктах у всех будут разные, но вот для % соотношения есть определённая зависимость.

Активность аппарата (показатель "Running") складывается из двух составляющих, "видимой" и "невидимой".
- "Видимая" составляющая формируется из всех действий которые происходят когда экран устройства включён, соответственно она ровна показателю "Screen on".
- "Невидимая" составляющая в свою очередь формируется когда экран устройства выключен. В идеале "невидимой" активности вообще не должно быть, если же она есть, значит аппарат что-то будит когда он "спит"и на это тратится энергия заряда.

Таким образом, определить есть ли проблемы с энергопотреблением устройства в режиме "сна" можно следующем образом:
Из показателя "Running" вычитаем показатель "Screen on" и получаем ту самою "Невидимую" составляющую. Если она получается больше 10% (в идеале она должна составлять до 5%), и находится в таком состоянии несколько дней значит надо искать будящую программу способами описанными в пункте 9.

Следует учесть, что прослушивание музыки при выключенном экране, ICQ весящая в фоне, (и другие подобные задачи) всё это тоже увеличивает значение "невидимой" составляющей, поэтому не надо этому удивляться, это нормально. Если же вы знаете, что не используете приложения в фоновом режиме, а "невидимая" составляющая в режиме сна растёт, это верный признак того, что аппарат что-то постоянно "будит" и он не может нормально находится в режиме энергосбережения.

Подробнее...
Наиболее достоверное среднее значение показателя "Running" будет сформировано примерно за день использование аппарата. Однако можно не ждать целый день, достаточно просто открыть данный пункт и запомнить значение показателя в минутах. Затем выйти из журнала и выкл. экран (перевести аппарат в режим "сна"). Спустя к примеру 10 мин. вкл. аппарат, запустить журнал и сравнить новое значение показателя с предыдущем. Например, показатель "Running" в начале был 52 мин. 10 сек, спустя 10 минут "сна" он стал 53 мин. 25 сек, т.е увеличился на 75 сек. или на 12.5% по отношению ко времени сна, что является слегка завышенным значением. Соответственно чем больше будет расчётное время сна, между измерениями, тем точнее будет значение параметра которое вы найдёте.
.
Для Андроид ОС 2.3
---------------------------
Способ 1.
В версии ОС>2.3. убрали пункт "журнал аккумулятора", вместо этого появился пункт "Использование батареи" (меню\настройка\сведения о телефоне\...).
В данном пункте приведён перечень параметров на которые уходит основной заряд батареи.


Вот расшифровка основных из них:
А. "отобразить" - время работы с включённым экраном (потребление энергии экраном);
Б. "режим ожидания"- время использования радиомодуля (потребление энергии радиомодулем телефона);
В. "время простоя" - время работы с выключенным экраном (думаю [но пока не факт!] сюда входит "невидима" составляющая, но только не для системных процессов);
Г. "Система Андройд" и "ОС Андройд" - время работы системных приложений (потребление энергии системными приложениями, при этом их активность в режиме сна показывается отдельно)
Д. "голосовые вызовы", "Wi-Fi" - общая длительность голосовых вызовов и время работы Wi-Fi (соответственно энергия затраченная на вызовы и Wi-Fi)
Пусть никого не пугают высокие значения % п. А, Б это основные потребители в любом телефоне и это нормально, хуже когда лидирует в этом списке что-то другое. И вообще, параметры выводимые в данном пункте настроек это всего лишь % соотношения, и они всегда будут в своей сумме образовывать 100%, т.е. показывать, как распределился заряд израсходованный за определённое время работы от батареи (выводимое вверху экрана).
К сожалению, из-за несовершенства системы, увидеть в этом списке, кроме вышеописанных параметров, в лучшем случае возможно только программу работающую "открыто". Встретить программу работающую "скрыто" (когда аппарат "спит"), т.е. увеличивающую "невидимую" активность, очень маловероятно.

Если тапнуть на верхнюю часть, то мы попадём в пункт с графиками разряда. Большой график показывает динамику снижения уровня заряда аккумулятора (по оси Y- уровень заряда, по оси Х-время).


Под ним 4 полоски:
-"Сигнал телефона" (показывает качество радио сигнала в месте нахождения аппарата, зелёная - хорошее, красная - плохое. Чем хуже качество, тем большее аппарат будет тратить энергии);
-"Wi-Fi" (синяя заливка полоски показывает время использование Wi-Fi передатчика);
-"Рабочий режим" или "Режим бодрствования" (синяя заливка полоски показывает время активности аппарата);
-"Экран включён" (синяя заливка полоски показывает время когда экран аппарата был включен);
-"Зарядка" (заливка полоски показывает время в течении которого аппарат заряжался);

Вся активность аппарата складывается из двух составляющих, "видимой" и "невидимой".
"Видимая" составляющая формируется из всех действий которые происходят когда экран устройства включён, т.е. когда полоска "Экран включён", а над ней и полоска "Рабочий режим", залиты синим;
"Невидимая" составляющая формируется когда экран устройства выключен, т.е. когда полоска "Рабочий режим" залита синим, а полоска "Экран включён" под ней нет. В идеале "невидимой" активности вообще не должно быть, если же она есть, значит аппарат что-то будит когда он "спит"и на это тратится энергия заряда.

На скриншоте приведённым выше как раз хорошо видна "невидимая" активность. За ночь наблюдений (идеальный период наблюдения, так как графики строятся довольно медленно), часть времени аппарат не спал. Если такая "невидимая" активность появляется слишком часто и продолжительна по времени (составляет более 10% от всей полоски "Рабочий режим") или приводит к значительной потери заряда, значит надо искать будящую программу способами описанными в пункте 9.

Следует учесть, что прослушивание музыки при выключенном экране, ICQ весящая в фоне, (и другие подобные задачи) всё это тоже увеличивает значение "невидимой" составляющей, поэтому не надо этому удивляться, это нормально. Если же вы знаете, что не используете приложения в фоновом режиме, а "невидимая" составляющая в режиме сна растёт, это верный признак того, что аппарат что-то постоянно "будит" и он не может нормально находится в режиме энергосбережения.

Способ 2.
Установить программу Battery History открывающий "Журнал аккумулятора" и пользоваться старой методикой, актуальной для ОС<2.3.
.
Оптимизируем
_________________________________
Далее Будет описано несколько советов как можно значительно уменьшить энергопотребления устройств, некоторые из них направлены как раз на исключение пробуждения аппарата во время "сна".
.
1. Внешнее воздействие.
----------------------------------------
Аппарат не засыпает если нажата хотя бы одна кнопка. И хотя данная проблема на большинстве аппаратов в новых прошивках уже решена, не поленитесь и проверьте, спит ли ваше устройство при нажатой кнопке (если не спит, "невидимая" составляющая за время удерживания кнопки будет равна 100%). Например, на Samsung i7500 особенно чувствительна оказалась кнопка камеры, и до выхода новой прошивки аппарат разряжался в считанные часы (в узком чехле из комплекта поставки).
.
2. Передача данных
Автосинхронизация, передача фоновых данных, запросы программ, и прочее, всё это тоже кушает драгоценную энергию и деньги за интернет трафик. Советую установить APNSwitch или APNDroid для ручного включения и отключения APN (сетевых интернет соединений) на вашем телефоне. Что бы проследить за трафиком когда вы сидите в интернете не по Wi-Fi советую установить 3GWatchdog (его тоже лучше включать только перед интернет сессией).
.
3. Беспроводные сети
_________________________________
Включённая сеть 3G (особенно в зонах её плохого покрытия), определение местоположения по беспроводным сетям (п. "GPS и Безопасность"), Wi-Fi, GPS, Bluetooth, всё это лучше включать при необходимости и выключать при ненадобности. Выведите на рабочий экран виджеты для быстрого включения этих функций.
.
4. Выбор между 2G или 3G
________________________________
Тут всё просто, если у вас приоритет на голосовые вызовы используйте 2G сети, это даст наибольшую экономию. Если приоритет на передачу данных, то использование 3G в определённых ситуациях может оказаться более выгодным.
Передача голоса. Как известно особенность 3G сетей в том, что они многоканальны и способны передавать голос и данные одновременно, тогда как в 2G сети единовременно могут передавать только что-то одно. Таким образом при обычном звонке (!не видео-звонке) все каналы будут заняты под передачу голоса, и хоть это возможно и повысит качество голоса но и энергопотребление также увеличит. (до 20% по некоторым источникам)
Передача данных. При достаточно хорошем покрытии вашего города сетью 3G (постоянно 3-4 делений), для передачи данных предпочтительнее использовать 3G взамен EDGE, так как EDGE потребляет в среднем на 30% больше энергии чем 3G (300 мА против 210 мА) и сравним с потреблением Wi-Fi (до 330 мА) (данные приведены для уверенного приёма обоих сетей при полной загрузке - скачивание файла к примеру). К тому же меньший итоговый расход энергии получается из-за меньшего времени использования сети 3G за счёт более высокой скорости передачи данных. Если же покрытие 3G не устойчивое, и местами отсутствует вовсе (ситуация в Москве на данный момент), лучше будет отключить использование сети 3G, так как при нахождении в зоне 2G ваш аппарат будет постоянно сканировать лишний диапазон частот на наличие 3G, тратя дополнительно драгоценную энергию.
.
5. Отключение радио модуля
Старайтесь выключать радиомодуль телефона (включать режим "в самолёте") в условиях плохого приёма сигнала от базовой станции, когда нет необходимости в телефонной связи (например ночью или в поездке). Иногда это может существенно сэкономить заряд. Запомните, чем хуже уровень сигнала (количество "палок" на индикаторе), тем больше аппарат будет потреблять энергии на его поддержание.
Кроме того, лучше отключать именно радиомодуль, а не сам телефон, так как перезагрузка "съест" ещё больше энергии.
.
6. Сенсоры и Датчики (Акселерометр, датчик магнитного поля и т.д.)
___________________________________
6.1. Каждый датчик находящийся в телефоне требует энергии для своей работы. Если речь идёт о "жёсткой" экономии заряда, то отключение или не использование каких-либо датчиков позволяет добиться сохранения определённой доли заряда.
Например у меня на SGS i9000 встроенные датчики имеют следующие значения потребляемого тока (я думаю данные характеристики применимы к 90% всех аппаратов на Андройд ОС):
-датчик вращения, 4,2 мА;
-датчик приближения, 0,75 мА;
-датчик ориентации, 4,2 мА;
-датчик магнитного поля, 4,0 мА;
-датчик ускорения, 0,2 мА;
-датчик света, 0,75 мА;
-датчик силы тяжести, 0,2 мА;
-акселерометр, 0,2 мА.
Ещё могут быть Гироскоп, Датчик давления, Термометр, но у меня их в аппарате нет.
Таким образом, самыми "прожорливыми" являются датчики отвечающие за ориентацию телефона в пространстве, и простое отключение функции "поворота экрана" может увеличить продолжительность жизни аппарата на 10% (субъективное суждение по модели Samsung i7500). Для быстрого включения\выключения данной функции можно вынести отдельный виджет на рабочий экран (например используя SwitchPRO Widget).
6.2. Игры в которых задействован сенсор положения могут потреблять до 90-200 мАч (к примеру 90 мА-это среднее потребление подсветки LCD экрана, 200 мА - потребление работающего GPS приёмника телефона), кроме того процессы связанные с использованием данного сенсора в играх и программах не убираются из памяти должным образом даже после закрытия программ (в том числе таск менеджером), и на них тоже тратится энергия. Просмотреть наличие в вашем телефоне таких остаточных процессов можно следующим образом (правда только на Андройд <2.3): после выхода из игры заходим в "журнал аккумулятора", выбираем вкладку "использования сенсора" и ищем там процесс с названием недавно закрытой игры или программы. Единственный способ убрать такие процессы из памяти это перезагрузка, однако как показывает практика, в большинстве случаев, расход энергии на них невелик.
Всего: 18