Android - переход от неподписанного к подписанному дистрибутиву apk

TL;DR: Как установить подписанный apk поверх неподписанной версии?

Я разрабатываю приложение, которое имеет около 150 пользователей. Приложение отсутствует в Google Play, я распространяю его в виде apk с моего сайта.

Реализован механизм проверки обновлений. Когда обновление найдено, приложение показывает диалог с кнопкой для загрузки. При нажатии apk загружается в папку "Downloads" и вызывается этот файл.

Я многому научился с тех пор, как начал разрабатывать это приложение, и теперь я хотел бы использовать подписывание apk. Но я могу ясно представить, какой будет боль объяснить 150 шагов пользователя по удалению и повторной установке этого приложения в небольшом диалоговом окне. Кроме того, их настройки будут потеряны (среди прочего, сохранены имя пользователя и пароль).

Так есть ли способ? Если нет, есть ли у вас хорошие советы?

Как это будет наименее болезненно для пользователей?

2 ответа

Тебе этого не сделать. Им следует вручную установить новый подписанный пакет и до / после этого удалить предыдущую unsigned-версию. Если имя пакета совпадает, они будут вынуждены удалить неподписанный файл ДО новой установки.

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

Каждое приложение, работающее на платформе Android, должно быть подписано разработчиком.

Таким образом, у вас есть два варианта:

  • Вариант 1. Используйте этот же ключ для публикации в Google Play. Ваши пользователи будут получать обновления до тех пор, пока вы публикуете APK с кодами более высоких версий.

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

Другие вопросы по тегам