Android M переможе "жор" батареї інтерв’ю з Google Developer Expert Ukrainian
Неперекладна назва Google Developer Expert означає визнаного Google експерта в будь-якій галузі розробки технологій Google, який не є співробітником цієї компанії. Статус GDE видається на рік і передбачає виступи на конференціях та публікацію матеріалів, які допомагають розробникам розібратися в Google-технологіях. Наш співрозмовник Денис Неклюдов виступив на конференції Android-розробників Droidcon Moscow 2015 з доповіддю про адаптацію додатків до нової ОС.
Почнемо з найгострішого питання. Оновлення до Android 5.0 Lollipop відбувалося довго і важко, зараз оновилися до останньої версії тільки 21% пристроїв на Android. Чи зміниться ситуація з Android M?
Також з кожним оновленням Android розробники обіцяли оптимізацію роботи батареї, але тією чи іншою мірою проблеми з енергоспоживанням зазнавали всіх девайсів, навіть “рідних” Nexus. Чи вирішено питання цього разу?
Так. У цій галузі Google зробили великий крок, ідеологічно схожий на те, як працюють iOS-пристрої. Справа в тому, що змінилася система доступу додатків до ресурсів.
Тепер, якщо ми гарантовано не користуємося пристроєм, запускається режим мінімального енергоспоживання, який різко знижує витрату батареї навіть при підключенні до Wi-Fi.
App Standby відповідає за програми, які активні, але давно не використовуються, при цьому з них не грає, наприклад, ніяка музика і не надходять повідомлення. Такі програми потрапляють у режим ізоляції, перестають отримувати ресурси системи та не розряджають пристрій.
Варто зауважити, що все, що я розповідаю, стосується чистого Android. В умовах сторонніх прошивок, які вендори поставлять насвої аксесуари, передбачити роботу системи складно. Ми накочували прев'ю-версію на Nexus 6 і 9, і в режимі щоденного використання витрата дійсно зменшилася.
Ще одне питання щодо енергоспоживання. Користувачі на форумі зазначають, що більшість витраченої енергії посідає роботу сервісів Google Play. З чим це пов'язано?
Сказати, що саме Google Play Services витрачають акумулятор – це неправильно. Вони є частиною операційної еко-системи, тому без них не можна. Коли іншій програмі – чи то карті, чи ще іншому – потрібно отримати місцезнаходження користувача, вона використовує Location Manager, який безпосередньо пов'язаний з Google Play Services. І саме завдяки тому, що сервіси Google Play "жили" у фоні, додаток карт, який ми щойно відкрили, одразу ж знаходить локацію.
Якби не це, іншим додаткам довелося б витрачати більше ресурсів. Наприклад, Google Play Services відповідають за Google Cloud Messanging, через які реалізовані всі push-сповіщення, і якби не це, кожному розробнику довелося б винаходити свою реалізацію повідомлень, що призвело б до збільшення витрат енергії. Тобто Google Play Services явно забирають зарядку батареї, але на благо.
Візьмемо послуги, пов'язані з фітнесом. Якщо користувач дав згоду на відстеження свого розташування, то розробнику не потрібно буде в свою програму вбудовувати фоновий сервіс, який слідкує за активністю користувача – Google Play Services безкоштовно дозволяють нам отримати доступ до їхнього сховища та рахувати інформацію звідти.
Давай поговоримо безпосередньо про шістку. Що на нас чекає з оновленням?
Для розробників це теж плюс, тому що багато користувачів не ставлять програми через список дозволів, що запитуються.Візьмемо програму-ліхтарик: користувач не розуміє, навіщо йому доступ до камери, не усвідомлюючи при цьому, що ліхтарик – це частина API камери, і неможливо його ввімкнути без відповідного доступу.
Деяким додаткам необхідний доступ до контактів, хоча це здавалося б неочевидним – наприклад, щоб швидко знайти друзів. Тепер запит на доступ з'явиться не при встановленні, а лише тоді, коли це буде необхідно під час роботи програми. Після одноразового дозволу програма не вимагатиме повторного підтвердження.
Є інформація про те, що в Android M буде загальний API для біометричних датчиків.
Так, в Android М з'явився офіційний API, пов'язаний із відбитками пальців. Будь-який розробник зможе зробити у своєму додатку автентифікацію через відбиток пальця, якщо на пристрої стоїть Android 6.0 та в нього вбудований відповідний датчик.
Раніше розробник, якщо його програма запустилася на Samsung, і йому доступний сервіс відбитків пальців, повинен був використовувати API Samsung. Тепер, сподіваюся, відбудеться об'єднання API з офіційним, і розробнику не треба буде думати, на якому вендорі запущено його додаток.
Які ще цікаві функції можна очікувати?
Як відбувається процес створення копії?
Дякую, Денисе! Чекатимемо на презентацію)
Автор: Олександра Митрошина