Как установить новый отладочный APK, не удаляя вручную старый отладочный APK с несоответствующей подписью?

У меня есть аппаратный продукт с приложением, которое пользователь не может закрыть. Когда появляется новое обновление, пользователь может обновить его до последней версии в приложении. Мы выпускаем debug-apk, а не подписанные.

Я читал, что студия Android автоматически подписывает отладочные apk. У меня есть новая версия приложения, которое я хочу выпустить, но подпись старого apk не соответствует подписи нового apk. Пользователи не могут удалить приложение и переустановить новое, поскольку они не могут выйти из приложения. Я не могу объехать весь мир вручную, обновляя каждый продукт.

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

Предложения: есть ли способ узнать автоматически сгенерированную подпись старого apk и изменить новую, чтобы она соответствовала ей? Или есть способ создать службу, которая может удалить старый apk и установить новый?


person Lincoln White    schedule 18.11.2017    source источник
comment
hugestreet.info/install-unsigned-apk-on-android-device   -  person Tomin B Azhakathu    schedule 18.11.2017
comment
android.stackexchange.com/questions/132374/   -  person Tomin B Azhakathu    schedule 18.11.2017
comment
Попробуйте эти решения, если у вас есть root-доступ   -  person Tomin B Azhakathu    schedule 18.11.2017
comment
Есть ли способ узнать автоматически сгенерированную подпись старого apk и изменить новую, чтобы она соответствовала ей? -- нет. Или есть способ создать службу, которая может удалить старый apk и установить новый? -- вы можете создать третье приложение, которое делает это. Однако неясно, как работают какие-либо из ваших обновлений, поскольку обновления (и удаления) требуют вмешательства пользователя в форме согласия на эти операции с помощью системных действий.   -  person CommonsWare    schedule 18.11.2017


Ответы (2)


Я мог бы просто скопировать файл debug.keystore с исходного компьютера, на котором были созданы более старые версии приложения, и заменить мой файл debug.keystore в папке users\yourname.android на моем компьютере. Затем мне пришлось перезапустить студию Android, и все снова заработало нормально.

person Lincoln White    schedule 02.12.2017

Вы можете использовать этот debug-key для подписи нового APK и его выпуска. И ваш пользователь может обновиться до нового.

На самом деле вы не подписываете новое приложение, а просто создаете APK с ключом отладки и выпускаете его.

с приведенным ниже кодом в вашей градации:

signingConfigs {
     debug {
         storeFile file("debug.keystore")
     }
 }
person SadeghAlavizadeh    schedule 18.11.2017