Обновления
Обновления и откат
Обновлено:
Приложение, установленное из файла, обновляется аналогичным образом — новым APK-файлом поверх старого. Данные при этом сохраняются, но сначала установщик проверяет три условия.
На этой странице
Условия установки поверх
| Условие | Требование | Если не выполнено |
|---|---|---|
| Имя пакета | совпадает с установленным | это другое приложение, оно установится рядом со старым |
| Подпись | тот же сертификат или законная ротация ключа | отказ, через adb — INSTALL_FAILED_UPDATE_INCOMPATIBLE |
| versionCode | номер не меньше, чем у установленной версии | отказ, через adb — INSTALL_FAILED_VERSION_DOWNGRADE |
Как обновить
- Скачайте новую версию из того же источника, что и первую.
- Сверьте контрольную сумму, если разработчик её публикует.
- Откройте файл и подтвердите установку. Вход в аккаунт и настройки сохранятся.
- Если приложение умеет обновляться само, оно скачивает APK и передаёт его системному установщику. Разрешение на установку неизвестных приложений в этом случае нужно уже ему, а не браузеру.
Откат на предыдущую версию
Установить старую сборку поверх новой нельзя: у неё меньше versionCode, и установщик откажет. Единственный рабочий способ — удалить приложение и установить нужную версию заново. При удалении стираются внутренние файлы программы, её настройки и локальная база данных. Фотографии, видео и документы в общих папках сохраняются, а данные на серверах сервиса от переустановки приложения не зависят.
Перед откатом:
- экспортируйте всё, что приложение позволяет сохранить: переписку, заметки, настройки;
- убедитесь, что старая версия подписана тем же ключом, иначе следующее обновление снова столкнётся с конфликтом подписей;
- храните APK предыдущих версий у себя, потому что найти конкретную старую сборку потом бывает непросто.
Совет
Встроенное резервное копирование Android сохраняет данные части приложений на Google Диске, до 25 МБ на программу. Однако разработчик может его отключить, поэтому рассчитывать только на него не стоит.
Если приложение состоит из split APK
Набор из базового APK и APK конфигураций обновляется тоже набором: все части должны относиться к одной версии и устанавливаться вместе. Если обязательной части не хватает, на устройствах с Android 10 и новее установка завершится ошибкой.
Источники
- Версии приложения и versionCodedeveloper.android.com
- Автоматическое резервное копированиеdeveloper.android.com
- bundletooldeveloper.android.com