Android app upgrade version

Как обновить приложение на Android

Приложения на Android обновляются регулярно. Этот процесс можно автоматизировать или контролировать самому. Покажем, как управлять обновлениями на своем устройстве.

Каждый из нас постоянно пользуется многочисленными приложениями (интернет-банки, социальные сети, мессенджеры, игры, офисные программы и пр.). Таким образом память мобильного устройства расходуется очень быстро, а обновления «прилетают» регулярно. Но не все из них бывают полезны или несут хотя бы какую-то значимость.

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

Включаем/выключаем автообновление

По умолчанию на любом смартфоне/планшете под управлением актуальной версии Android в магазине приложений Google Play включена функция автоматического обновления программ. С одной стороны, это удобно. Вам не нужно вручную проверять наличие обновлений, так как за вас своевременно это сделает система. С другой стороны, мы уже разобрались с минусами такой функции.

Для управления функцией автоматического обновления повторяем следующие шаги:

Шаг 1. Откройте Google Play Маркет на своем мобильном устройстве.

Шаг 2. Нажмите на иконку вашего профиля, которая находится в строке поиска.

Шаг 3. Перейдите в раздел «Настройки» и откройте вкладку «Настройки подключения».

Шаг 4. Выберите строку «Автообновление приложений» и нажмите «Отключить» (для включения следует нажать «Только для Wi-Fi» или «Любая сеть», соответственно).

Как обновлять приложения вручную

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

Для ручного обновления приложений выполните следующие действия:

Шаг 1. Откройте Google Play Маркет и в строке поиска раскройте меню профиля, нажав на его иконку.

Шаг 2. Перейдите в раздел «Управление приложениями и устройством».

Шаг 3. Выберите строку «Доступны обновления».

Шаг 4. Появится список установленных на устройстве приложений, для которых доступна новая версия. Чтобы получить ее, выберите любую программу из списка и нажмите на кнопку «Обновить».

Что делать если нет Google Play

На некоторых устройствах от производителей Huawei и Honor сервисы Google Play могут отсутствовать. Но компании позаботились об этом и создали свой встроенный в систему магазин приложений, чтобы как-то заменить программу от Google.

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

Далее мы скачаем специальную утилиту, которая может стать вам более легковесной заменой Google Play. Она меньше нагружает систему и не будет постоянно «висеть» в фоновом режиме, проверяя наличие обновлений или сканируя приложения. Единственный ее недостаток – она умеет находить не все обновления (для нахождения новых нужно будет подождать подольше).

Читайте также:  Как безопасно обновить андроид

Шаг 1. Перейдите по этой ссылке на сайт GitHub и скачайте утилиту ApkGrabber, нажав на кнопку «app-release.apk». При загрузке через Google может быть предупреждение о вреде устройству – не боимся и нажимаем «Ок».

Шаг 2. Откройте любой файловый менеджер, установленный на вашем смартфоне, и найдите загруженный файл (по умолчанию он должен находиться во внутреннем хранилище, папка «Download»).

Шаг 3. Нажмите на скачанный файл и установите ApkGrabber, нажав на клавишу «Установить». Перед этим может появиться системное окно с предупреждением о неизвестном источнике – нужно активировать ползунок.

Шаг 4. После установки запустите программу и перейдите на вкладку «Обновления». Здесь будут находиться все найденные новые версии для установленных на девайсе приложений. Для загрузки нужно нажать «Установить» или на кнопку с названием ресурса (Aptoide, APKMirror и пр.).

Шаг 5. Для включения или выключения автоматического обновления откройте настройки, нажав на шестеренку, и выберите строку «Проверка обновлений».

Шаг 6. Чтобы быстрее получать обновления для большего количества приложений, включите дополнительные источники поиска. Для этого откройте настройки и пролистайте до раздела «Источники обновлений». Здесь активируйте все пункты, как показано на скриншоте.

Источник

In-App Updates: ускоряем процесс обновления приложения на Android

Среди многообразия инструментов, анонсированных на Android Dev Summit, особое внимание хочется уделить механизму обновления приложения In-App Updates (IAUs), который помогает разработчикам ускорить добавление новых фич, баг-фиксов и улучшений производительности. Поскольку эта функциональность была опубликована после Google I/O 2019, в этой статье я подробно расскажу об IAUs, опишу рекомендованные схемы реализации и приведу некоторые примеры кода. Также я расскажу о нашем опыте интеграции IAUs в Pandao, приложение для заказа товаров из Китая.

Новый API позволяет разработчикам инициировать обновление приложения до последней доступной в Google Play версии. Таким образом IAUs дополняет уже существующий механизм автоматического обновления Google Play. IAUs содержит несколько схем реализации, которые принципиально различаются с точки зрения взаимодействия с пользователем.

    Flexible Flow предлагает пользователям скачать обновление в фоновом режиме и установить в удобное для пользователя время. Он предназначен для случаев, когда пользователи всё ещё могут использовать старую версию, но уже доступна новая.



Immediate Flow требует от пользователей скачать и установить обновление, прежде чем продолжить использование приложения. Он предназначен для случаев, когда для разработчиков критически важно обновить приложение.


Поскольку второй вариант не так важен и меньше подходит для приложения Pandao, разберём подробнее сценарий Flexible Flow.

Интеграция IAUs Flexible Flow

Варианты использования

Процесс обновления с помощью IAUs состоит из нескольких шагов.

  1. Приложение с помощью библиотеки Play Core, которая проверяет в Google Play, есть ли доступные обновления.
  2. Если они есть, то приложение просит Google Play показать диалог IAUs. Google Play показывает пользователю диалог с предложением обновиться.
  3. Если пользователь соглашается, Google Play в фоновом режиме скачивает обновление, показывая пользователю в статус-баре прогресс скачивания.
  4. Если скачивание завершилось, когда приложение работает в фоновом режиме, Google Play автоматически завершает установку. Если же приложение в этот момент активно, то для таких случаев нужно определять собственную логику завершения установки. Рассмотрим следующие сценарии.
    1. Приложение запускает процесс установки, показав пользователю диалог Google Play с индикатором прогресса. После завершения установки запускается обновленная версия приложения. В этом случае рекомендуется отобразить дополнительный диалог, который позволит пользователю подтвердить, что он готов сейчас перезапустить приложение. Это рекомендуемая схема реализации.
    2. Приложение ждёт, пока оно окажется в фоновом режиме, и после этого завершает обновление. С одной стороны, это менее навязчивое поведение с точки зрения UX, так как взаимодействие пользователя с приложением не прерывается. Но с другой — оно требует от разработчика реализовать логику для определения того, находится ли приложение в фоновом режиме.
Читайте также:  Java android get app name

Если установка скачанного обновления не была завершена, то Google Play может завершить установку в фоновом режиме. Данный вариант лучше не использовать явно, потому что он не гарантирует установки обновления.

Основные требования к тестированию

Чтобы вручную выполнить весь процесс обновления на тестовом устройстве, нужно иметь как минимум две версии приложения с разными номерами сборок: исходная и целевая.

  • Исходная версия с более высоким номером должна быть опубликована в Google Play, она будет идентифицирована Google Play как доступное обновление. Целевая версия с более низким номером сборки и интегрированным IAUs должна быть установлена на устройстве, её мы будем обновлять. Суть в том, что когда приложение попросит Google Play проверить наличие обновления, он сравнит номера сборок у установленной и доступной версии. Так что IAUs будет запущено только в том случае, если номер сборки в Google Play выше, чем у текущей версии на устройстве.
  • Исходная и целевая версии должны иметь одинаковые имена пакета и должны быть подписаны одинаковым релизным сертификатом.
  • Android 5.0 (API level 21) или выше.
  • Библиотека Play Core 1.5.0 или выше.

Пример кода

Здесь мы рассмотрим пример кода для использования IAUs Flexible Flow, который также можно найти в официальной документации. Для начала необходимо добавить библиотеку Play Core в build.gradle файл на уровне модуля.

Затем создадим экземпляр AppUpdateManager и добавим функцию обратного вызова к AppUpdateInfo , в которой будет возвращаться информация о доступности обновления, объект для запуска обновления (если оно доступно) и текущий прогресс скачивания, если оно уже началось.

Чтобы показать диалог для запроса обновления из Google Play, необходимо передать полученный объект AppUpdateInfo в метод startIntentSenderForResult .

Для отслеживания состояния обновления можно добавить в менеджер IAUs слушатель событий InstallStateUpdatedListener .

Как только обновление будет скачано (статус DOWNLOADED ), нужно перезапустить приложение, чтобы завершить обновление. Перезапуск можно инициировать с помощью вызова appUpdateManager.completeUpdate() , но перед этим рекомендуется показать диалоговое окно, чтобы пользователь явно подтвердил свою готовность к перезапуску приложения.

Ошибка «Update is Not Available»

Во-первых, перепроверьте соответствие требованиям, перечисленным в разделе «Basic Implementation Requirements». Если вы все выполнили, однако обновление согласно вызову onSuccess , всё же недоступно, то проблема может быть в кэшировании. Вполне вероятно, что приложение Google Play не знает о доступном обновлении из-за внутреннего механизма кэширования. Чтобы избежать этого при ручном тестировании, вы можете принудительно сбросить кэш, зайдя на страницу «Мои приложения и игры» в Google Play. Или можете просто очистить кэш в настройках приложения Google Play. Обратите внимание, что эта проблема возникает только в ходе тестирования, она не должна влиять на конечных пользователей, поскольку у них кэш всё равно обновляется ежедневно.

Читайте также:  Lego ninjago tournament android

IAUs Flexible Flow в приложении Pandao

Мы участвовали в программе раннего доступа и интегрировали IAUs Flexible Flow (рекомендованная реализация) в приложение Pandao — платформу, на которой производители и вендоры могут торговать китайскими товарами. Диалог IAUs отображался на главном экране, так что с ним могло взаимодействовать максимальное количество пользователей. Изначально мы хотели показывать диалог не чаще раза в день, чтобы не отвлекать людей от взаимодействия с приложением.

Поскольку A/B-тестирование играет ключевую роль в жизненном цикле любой новой фичи, мы решили оценить эффект от IAUs в нашем приложении. Мы случайным образом разделили пользователей на две непересекающиеся группы. Первая была контрольной, без использования IAUs, а вторая группа была тестовой, этим пользователям мы показывали диалог IAUs.


A/B-тест IAUs Flexible Flow в приложении Pandao.

В течение последних нескольких релизов мы измерили долю активных пользователей каждой версии приложения. Оказалось, что среди активных пользователей с последней доступной на тот момент версией основную часть составляли участники из группы B, то есть с функцией IAU. Фиолетовая линия на графике показывает, что в первые дни после публикации версии 1.29.1 количество активных пользователей с IAUs превысило количество пользователей без этой функции. Поэтому можно утверждать, что пользователи с IAUs быстрее обновляют приложение.


Диалог IAUs Flexible Flow в приложении Pandao.

Согласно нашим данным (см. график выше), пользователи больше всего кликают на кнопку подтверждения в диалоге IAUs в первые дни после релиза, а затем конверсия постоянно снижается вплоть до публикации следующей версии приложения. То же самое наблюдается с кнопкой установки в диалоговом окне, которая инициирует установку скачанного обновления. Следовательно, можно сказать, что среднее значение конверсии в обоих случаях прямо пропорционально частоте релизов. В Pandao средняя конверсия в течение одного месяца достигает 35 % для клика на кнопку подтверждения и 7 % для клика на кнопку установки.

Мы предполагаем, что уменьшение доли подтверждений с течением времени — лишь проблема пользовательского опыта, потому что люди, которым интересна новая версия, будут обновляться довольно быстро, а те, кто не интересуются обновлением, так и не станут интересоваться. Исходя из этого предположения, мы решили не беспокоить тех, кому не интересно обновление, и не спрашивать их каждый день. Хорошей практикой будет использование другой логики запросов, которая основывается на «устаревании», то есть чтобы не беспокоить пользователей, мы оцениваем, насколько старые версии стоят у них и как часто мы уже предлагали им обновиться.

В целом IAUs продемонстрировала хорошие результаты в ходе A/B-тестирования, так что мы раскатили IAUs для всех пользователей.

Источник

Оцените статью