Порівняно невеликий час автономної роботи - це чи не основна проблема всіх Android-смартфонів і інших девайсів з моменту їх появи на ринку, причому проблема настільки актуальна, що до сих пір, через кілька років після випуску найперших Android-пристроїв, з'являються програмні способи збільшення часу автономної роботи. В даному циклі статей ми спробуємо розглянути якщо не всі, то більшість з доступних способів поліпшення енергозбереження.
Для початку давайте розберемося з основною і не завжди очевидною причиною малого часу роботи пристрою від акумуляторної батареї, а саме порушення енергозбереження в режимі сну. В Android версії 2.2 і більш ранній, після використання апарату протягом повного робочого дня (але не довівши його до повної розрядки з вимиканням) набираємо в «дзвонилка» наступне:
* # * # 4636 # * # *
Також з цими цілями впорається додаток SpareParts. Звертаємо увагу на пункт «Battery History» (тобто, «Журнал акумулятора»). Тут зведена повна інформація по споживанню пристроєм енергії. Цікавий в першу чергу пункт «Other Usage», де виведені такі підпункти:
«Running» ( «Режим роботи», «Виконується») - пункт показує час роботи поза режимом очікування, тобто весь час активності пристрою. Статистика показується у відсотках, при натисканні - в хвилинах.
«Screen On» ( «Включено екран») - пункт відображає час, який пристрій працює з включеним дисплеєм, знову ж таки - у відсотках, при натисканні - в хвилинах.
«Phone On» ( «Телефон Увімкнути») - пункт показує загальний час телефонних розмовах, у відсотках, при натисканні - в хвилинах.
Друге меню дозволяє для зручності сортувати дані і виводити їх за весь час роботи апарату, за час після останньої перезавантаження або після останньої підзарядки. В цілому, зрозуміло, що показники будуть відрізнятися, але в цілому співвідношення енергоспоживання різними функціями залишається приблизно однаковим.
Що стосується пункту «активності» ( «Running»), то вона складається з «видимої» і «невидимої». Суть в тому, що «видима» її частина формується всіма діями, які відбуваються з включенням екрану, тобто за великим рахунком вона дорівнює показнику «Включено екран». А «невидима» складова, в свою чергу, формується, коли екран девайса вимкнений. Тобто в ідеалі бути її не повинно зовсім, або ж дуже мала частина у всій пропорції, але на ділі - вона присутня. А це означає, що під час сну щось «будить» пристрій, на що, відповідно, і витрачається заряд. Тобто, щоб визначити, чи є у пристрої проблеми з енергозбереженням уві сні, досить з параметра «Режим роботи» відняти параметр «Включено екран» - отримуємо «невидиму» активність, і якщо вона більше 10%, значить потрібно вживати заходів. Рекомендується, щоб даний показник не перевищував 5%. Але не забуваємо, що прослуховування в тлі музики, постійно ввімкнені фонові клієнти соціальних мереж, поштові клієнти і так далі збільшують значення «невидимої» складової. Задуматися варто, якщо особисто ви фонових завдань не запускали, а «невидима» активність знаходиться на дуже високому рівні. Саме достовірне значення показника «Режим роботи» формується приблизно за повний день використання Android-пристрої, але можна не чекати весь день. Досить відкрити цей пункт і запам'ятати значення показника (в хвилинах). Після закрити журнал і вимкнути екран - тобто, активувати режим сну. Через, наприклад, 10 хвилин включаємо девайс, відразу ж запускаємо журнал і порівнюємо нове значення даного показника з попереднім, яке запам'ятали. Для прикладу, «Режим роботи» показував 42 хвилини 10 секунд, а через 10 хвилин сну - 43 хвилини 25 секунд, тобто збільшився на 75 секунд. 75 секунд, в даному випадку, - 12.% по відношенню до часу сну (10 хвилин), це забагато. Таким чином, чим більше буде час сну для підбору значень для розрахунку активності пристрою, тим точніше вийде результат.
Починаючи з Android 2.3 і вище, пункту «Журнал акумулятора» більше немає, на його заміну прийшов пункт «Використання батареї» в настройках мобільного девайса. Відкривши даний пункт, можна отримати доступ до переліку всіх параметрів, на які йде заряд акумулятора.
Розшифруємо основні пункти. До слова, переклад пунктів може відрізнятися в залежності від апарату, але іконки завжди залишаються незмінними.
«Показати» - пункт, який відповідає за час роботи з включеним екраном, тобто споживання заряду батареї екраном.
«Режим очікування» - час використання радиомодуля телефону і, відповідно, споживання енергії ім.
«Час простою» - термін його служби з вимкненим екраном. До слова, сюди входить та сама «невидима» складова активності, про яку ми говорили трохи раніше.
«Система Android» - час роботи системного програмного забезпечення і споживання ним заряду акумуляторної батареї, при цьому їх активність уві сні показана окремо.
«Голосові виклики» і «Wi-Fi» - тривалість голосових викликів і загальний час роботи Wi-Fi, і, відповідно, заряд акумуляторної батареї, витрачена на ці функції.
Високі (у відсотках) значення пунктів «Показати» і «Режим очікування» - це нормально, так як саме вони завжди лідирують практично в будь-якому пристрої за рівнем споживання енергії. Крім того, параметри в даному пункті налаштувань - процентні співвідношення, в сумі утворюють 100%, тобто вони показують розподілу використання заряду акумуляторної батареї на різні функції. Через певної недосконалості даної системи, в списку можна в кращому випадку побачити програми, що працюють «у відкриту». Тобто, програми, що працюють «Приват», під час сну Android-пристрої, побачити вийде навряд чи.
Якщо натиснути на верхню частину, то буде виведений графік розряду. За Y-осі показується рівень заряду, а по X-осі - час, таким чином можна відстежити динаміку витрачання енергії. Внизу також видно чотири полоси:
«Сигнал телефону» - показує якість радіосигналу, зелене - гарна якість, червоне - погане. Чим гірше якість, тим інтенсивніше доводиться працювати радіоприймача, і тим швидше витрачається енергії.
«Wi-Fi» - заливка смужки синім - це періоди використання Wi-Fi.
«Робочий режим» ( «Режим неспання») - заливка смужки синім також показує загальний час активності девайса.
«Екран включений» - синім відображений час, протягом якого був включений екран мобільного пристрою.
«Зарядка» - відображає синім періоди, в які відбувалася зарядка акумуляторної батареї.
Активність мобільного Android-пристрої, знову-таки, складається з «видимої» і «невидимої». «Видима» сформована з усіх дій, які відбуваються в моменти включеного екрану, тобто смужка «Екран включений» і «Робочий режим» - сині. «Невидима» ж складова формується в періоди вимкненого дисплея мобільного пристрою - смужка «Робочий режим» синя, але «Екран включений» - чорна. В ідеалі «невидимої» активності бути не повинно зовсім, якщо вона є - значить якісь процеси будять гаджет під час сну, витрачаючи в певній мірі заряд акумуляторної батареї.
На наведеному вище знімку екрану добре простежується «невидима» активність. За ніч спостережень - а це найкращий період, так як графіки будуються повільно і потрібні за кілька годин, деяку частину часу мобільний апарат не спав. Якщо «невидима» активність становить більше 10% від смужки «Робочий режим», значить вона призводить до значної втрати заряду акумулятора і треба шукати процеси, що будять пристрій. Про це ми поговоримо трохи пізніше. До слова, можна простежити динаміку витрати заряду акумуляторної батареї і позаштатними засобами, а встановити додаток Battery History, і користуватися старою методикою, актуальною для операційної системи Android версії 2.2 і більш ранніх.
Тепер давайте приступимо до оптимізації часу автономної роботи нашого Android-девайса, що дозволить значно зменшити енергоспоживання. Деякі з способів, наведених нижче, якраз спрямовані на виключення мимовільних пробуджень мобільного девайса.
Отже, для початку - зовнішній вплив. Мобільний апарат не зможе піти в режим сну, якщо натиснута хоча б одна, будь-яка, кнопка. На більшості сучасних моделей Android-пристроїв дана проблема вирішена, але все ж варто перевірити ще раз, чи спить пристрій, утримуючи кнопку. Якщо не спить, то за час утримування будь-якої кнопки показник «невидимої» складової активності буде дорівнює 100%. З відомих проблемних пристроїв - на Samsung i7500 дуже чутливою була кнопка камери, і смартфон міг розрядиться повністю буквально за кілька годин перебування у вузькому і щільному чохлі з комплекту поставки, через те, що пристрій вважало кнопку постійно затиснутою.
Далі, варто сказати про передачу даних, або, простіше кажучи, про мобільний інтернет. Це включає автосінхронізаціі різних додатків і сервісів, передачу даних в тлі і так далі. На все це, крім грошей за трафік, також витрачається і дорогоцінний заряд акумуляторної батареї. Настійно рекомендується при невживаному з'єднанні з Інтернетом відключати передачу даних за допомогою 3G або EDGE. Це може заощадити до 20% заряду за ніч. Бажано відключати передачу даних через меню, повністю. Використання Firewall для блокування трафіку не у всіх випадку допомагає. Якщо стандартними методами відключити передачу даних неможливо (а така проблема поширена на прошивках на основі ОС Android 2.2 і раніших, так як за функцію відповідає кнопка розблокування), то можна встановити окрему програму. Цей додаток вручну здатне вмикати або вимикати APN на пристрої. Для прикладу - програми APNSwitch і APNDroid. Щоб стежити за споживаним трафіком при використанні інтернету не по Wi-Fi, найкраще проводити моніторинг за допомогою спеціальних програм, таких як 3GWatchdog (рекомендується запускати безпосередньо перед сесією роботи в інтернеті).
Відносно бездротових мереж. Включена мережу 3G, особливо в зонах з поганим рівнем сигналу, позиціонування на основі бездротових мереж (пункт налаштувань «GPS і Безпека»), Wi-Fi, Bluetooth, GPS - все це найкраще вимикати, якщо функції не використовуються, і включати тільки при виникненні необхідності. Це дозволити значно збільшити час автономної роботи мобільного Android-пристрої. Для зручності можна вивести віджети для управління перерахованими функціями на робочий стіл.
Вибір між мережами 3G і 2G досить простий. З метою економії заряду батареї, рекомендується для голосових викликів використовувати 2G-мережі, а для передачі даних - 3G. Передача голосу за допомогою 2G-мереж краще, так як вони одноканальний, і одноразово можуть передавати тільки щось одне, тоді як 3G - багатоканальні, і можуть одночасно обмінюватися з мережею голосом і даними. Так що при звичайному дзвінку (не бачило) всі канали 3G-з'єднання будуть зайняті на передачу голосу. Це в деякій мірі може і підвищити якість переданого голосу, але також відіб'ється і на енергоспоживанні, причому досить значно - до 20-25%. Що стосується передачі даних, то при якісному покритті населеного пункту 3G-мережею (3-4 поділу постійно мінімум), то краще використовувати саме її, а не EDGE. EDGE споживає на 30% більше енергії (приблизно 300 мА проти 210 мА) і ближче до такого показника у Wi-Fi (330 мА). Природно, дане споживання стосується повному навантаженні - наприклад, скачування файлу. Крім того, швидкість прийому даних в 3G-мережі вище, а це скорочує час використання мережі. Але, відразу обмовимося, якщо покриття 3G не найкраще, а місцями відсутня, то енергоспоживання різко підніметься, та як будучи в зоні 2G мобільний пристрій буде постійно сканувати зайвий діапазон на наявність 3G-покриття. А сканування мережі зазвичай найбільш енергозалежний процес.
Не забуваємо «ручками» відключати радіомодуль смартфона або комунікатора, тобто включати «Режим польоту» ( «Режим в літаку», «Режим авіа» і таке подібне, залежить від перекладу), якщо прийом сигналу від базової станції поганий і необхідності в телефонного зв'язку в даний момент немає, наприклад, в поїздці або вночі. Це суттєво економить заряд акумуляторної батареї. Чим гірше сигнал, тим більше енергії витрачається на його підтримку - більш інтенсивно працює радіомодуль. Також краще відключати саме радіомодуль, а не пристрій повністю, так як на перезавантаження може витратитися ще більше заряду батареї.
Поговоримо про датчиках і сенсорах, а це датчик магнітного поля, акселерометр і так далі. Всі вони споживають енергію для своєї роботи. І в умовах максимальної економії заряду батареї відключення або невикористання будь-яких з датчиків дозволяє домогтися збереження певної частки заряду. Для прикладу, наведемо значення споживаного струму для Samsung Galaxy S (i9000):
Датчик обертання - 4,2 мА
Датчик наближення - 0,75 мА
Датчик орієнтації - 4,2 мА
Датчик магнітного поля - 4,0 мА
Датчик прискорення - 0,2 мА
Датчик освітлення - 0,75 мА
Датчик сили тяжіння - 0,2 мА
Акселерометр - 0,2 мА
В цілому, наведені характеристики застосовні до більшості Android-пристроїв. Також, в більш сучасних пристроях, можуть бути присутніми Гироскоп, Датчик тиску, Термометр і інші. Як можна побачити з таблиці, найбільше енергії споживають датчики, які відповідають за орієнтацію пристрою в просторі, і відключивши функцію «повороту екрану» можна збільшити час автономної роботи на 5-10%. Для того, щоб мати швидкий доступ до управління цією функцією, можна використовувати віджети, наприклад SwitchPRO Widget. Ігри, задействущіе сенсор положення мобільного пристрою в просторі, можуть споживати до 200 мАг, а це досить багато. Більш того, процеси, пов'язані з використанням даного сенсора, не прибираються з пам'яті навіть після виходу з програми (в тому числі за допомогою Task Manager), і на них витрачається дорогоцінна енергія. Прибрати такі процеси з пам'яті можна, перезагрузив пристрій, але в цілому витрата енергії на них не надто великий, на відміну від самих програм та ігор.
У наступній статті з даного циклу ми торкнемося питання споживання заряду акумуляторної батареї екраном, процесором, а також способи боротьби з небажаною «невидимої» активністю.
Оцініть статтю: Поділіться з друзями!