Найти тему
NEOVOLT

Одни Push-уведомления разряжают батарею, а другие нет. Почему?

Оглавление

🔋 Neovolt.ru Блог Android

В инженерном блоге компания Google уделила внимание наболевшей проблеме про чрезмерный расход заряда батареи в Android-устройствах.

Некоторые приложения разряжают аккумулятор телефона слишком быстро. Пользователь едва успевает оценить достоинства программы, как уже спешит удалить её из-за катастрофического «жора».

По мнению Google, обычно причиной «утечки» заряда становится плохая реализация Push-уведомлений Android. Ниже вы узнаете, как всё это работает и что полезного тут можно извлечь.

Как оптимизируют Push-уведомления на Android?

Оптимизация программ для Android — единственный путь бережного отношения к заряду аккумулятора. Вот, что об этом говорят сами разработчики мобильной платформы, прилагая пример создания уведомлений Twitter (практически не разряжает аккумулятор).

💭 Как им это удалось сделать? Как повторить этот успех и другим разработчикам?

Сейчас клиентское приложение Twitter обладает самой низкой нагрузкой на телефонные ресурсы среди прочих мобильных приложений (по данным исследовательского софта Android Developers). Это целиком результат взаимодействия с отделом программных инноваций Google.

🔎 Команда социальной сети решила не таить секрет и поделилась им со всеми.

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

💡 Сегодня автономность — это чуть ли не самая востребованная характеристика для пользователей.

Устанавливая Twitter на свой телефон, вы получаете целый набор технологий, которые с умом используют ресурсы мобильного гаджета. Давайте посмотрим, что же это за решения.

Firebase Cloud Messaging (FCM) обеспечивает «облегчённое» соединение между сервером приложения и устройствами пользователей, а ещё предлагает таргетинговые инструменты.
Firebase Cloud Messaging (FCM) обеспечивает «облегчённое» соединение между сервером приложения и устройствами пользователей, а ещё предлагает таргетинговые инструменты.

Основные принципы оптимизации приложений в Android по нагрузке на аккумулятор

По опыту разработчиков Android-клиента Twitter (в том числе в ходе A/B-тестирования) и после перехода на новый набор API в Firebase Cloud Messaging (FCM), реализация Push-уведомлений на Android должна учитывать следующие виды оптимизации.

  1. Используются резервные App Standby Buckets (функция из Android 9.0 Pie) для ограничения числа приоритетных сообщений.
  2. Сообщения с высоким приоритетом должны быть зарезервированы для уведомлений, с которыми пользователи чаще взаимодействуют.
  3. Важно добиться того, чтобы из Doze-режима не задерживались по-настоящему важные сообщения, когда как остальные информационные или новостные — оставались в резерве.
  4. Необходимо правильно классифицировать сообщения FCM с высоким приоритетом на базе исследований и тестирования процессов взаимодействия пользователя с программой или сайтом.
  5. Не включайте излишние метаданные в нагрузку к обычному уведомлению — лишь 1% сообщений должен использовать превадрительную выборку (данные больше 4 Кб), поэтому не следует злоупотреблять такими методами.
  6. Начиная с Android 8.0 Oreo разработчики могут использовать каналы уведомлений. Например, в Twitter их 9 с разной степенью важности — лишь экстренные Push и заявления по безопасности стоят в высоком приоритете, когда как 7 остальных относятся к низкоприоритетным сообщениям.
-3

Google: как сделать так, чтобы пользователь не хотел выключать Push-уведомления на Андроид?

Вот, что помогает разработчикам приложений завоевать лояльную аудиторию пользователей, по мнению Google.

  • Переход на FCM.
  • Установка приоритета для уведомлений.
  • Ограничение предварительной выборки.
  • Значительные уступки в проектировании каналов сообщений в пользу энергосбережения.

Нагрузка на метаданные и навязчивые попытки обогатить работу пользователей с Push-уведомлениями могут всё испортить. Отсутствие оптимизации может превратить любой смартфон в кусок бесполезного пластика с вечно разряженной батареей.

Посмотрите на другие статьи из мира науки и аккумуляторов

-4

Напишите в комментарии, появилась ли у вас привычка выключать уведомления для приложений на Android-смартфоне? Например, многие сразу же «отключают» пул магазинов, пиццерий, очистки памяти и прочих замусоривающих «шторку» приложений.