Инструкция AndroidSoft

Как обновить приложение через APK без потери данных

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

Короткий ответ: чтобы обновить приложение из APK, установите новую версию поверх старой — удалять ничего не нужно. Android сохранит данные, если у файла то же имя пакета, та же подпись и более новый код версии.

Коротко

  • Обновление поверх сохраняет настройки, аккаунты и файлы приложения.
  • Три условия: тот же пакет, тот же сертификат подписи, код версии не меньше установленного.
  • Если приложение стояло из Google Play, файл должен быть подписан тем же ключом, что и версия из Play.
  • Split-пакеты XAPK, APKM и APKS обновляются через установщик split-пакетов.

Пошагово

  1. Узнайте установленную версию. «Настройки → Приложения → название приложения». Номер версии обычно указан внизу страницы.
  2. Выберите новую версию. Она должна быть новее установленной и подходить вашему Android и процессору.
  3. Скачайте файл в том же формате, который нужен устройству: APK или split-пакет.
  4. Откройте файл. Android покажет вопрос «Установить обновление для этого приложения?» — это признак того, что подпись совпала.
  5. Подтвердите обновление и дождитесь окончания. Открывать и закрывать приложение заранее не нужно.
  6. Проверьте результат. Номер версии в настройках приложения должен смениться.

Если обновление не ставится

  • «Приложение не установлено» без пояснений. Чаще всего у файла другая подпись. Сравните сертификат с установленной версией. Если подписи разные, обновить поверх нельзя — только переустановить с потерей данных.
  • Android предлагает установить, а не обновить. Значит, у файла другое имя пакета: это отдельное приложение, например бета-версия или облегчённая Lite-версия.
  • Файл старее установленного. Установщик откажет. Старые версии ставятся только после удаления текущей.
  • Не хватает памяти. Для обновления нужно место под новую версию целиком, пока старая ещё установлена.

Google Play и обновления из файла

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

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

Как это выглядит на AndroidSoft

На странице приложения указаны актуальная версия и дата её выпуска, а в разделе «Все версии» — история выпусков. Так легко понять, насколько ваша версия отстала. У каждого файла перечислены формат, размер, требование к Android, архитектура и плотность экрана; кнопка скачивания выдаёт готовую проверенную копию либо показывает состояние поиска и проверки выбранной версии. Не считайте страницу ожидания загруженным APK.

У каждого файла указан статус проверки AndroidSoft. Для проверенных файлов показан сертификат подписи с пометкой, совпадает ли он с ранее проверенными версиями этого приложения. Совпадение сертификата у проверенного APK подтверждает преемственность ключа подписи; готовые зеркальные APK проходят также проверку криптографической подписи. Для вариантов, где доступна только информация от источника, это ещё не подтверждение целостности файла. Такие проверки не заменяют антивирусный анализ.

Вопросы и ответы

Нужно ли очищать кэш перед обновлением?

Нет. Очистка кэша не влияет на установку и нужна, только если после обновления приложение работает с ошибками.

Можно ли пропустить несколько версий?

Да, ставить промежуточные версии не нужно: новая версия сразу заменяет любую более старую.

Сохранятся ли разрешения приложения?

Да, выданные разрешения сохраняются. Новые разрешения, если они появились в новой версии, приложение запросит при запуске.