Подтвердить что ты не робот

Вручную установка обновленного APK не выполняется, поскольку "подписи не соответствуют ранее установленной версии"

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

Я построил первый apk (подписанный), загрузил его на веб-сервер и все хорошо работало.

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

signatures do not match the previously installed version

Итак, я удалил старую версию, открыв ящик приложения и перетащив ее на кнопку "удалить". Открывая "Настройки → Приложения", я больше его не вижу. Я не вижу никаких следов приложения на своем устройстве.

Однако я все еще получаю сообщение об ошибке выше.

Возможно ли, что какая-то информация все еще задерживается на устройстве? Есть ли способ проверить это?

4b9b3361

Ответ 1

Да Возможно, если какое-то ваше старое приложение не будет удалено на 100% или его данные не будут удалены.

Пытаться:

adb uninstall "com.yourapp.yourapp"

Если вы точно не знаете, что поставить в качестве замены для "com.yourapp.yourapp", тогда вы просто открываете студию Android, запустите приложение, когда оно подключено к устройству, а затем посмотрите в окне отладки.

В нем говорится:

 Waiting for device.
 Target device: samsung-sm_t531-xxxxxxxxx
 Uploading file
 local path: C:\Users\myapp\app\build\outputs\apk\myapp.apk
 remote path: /data/local/tmp/com.myapp.myapp
 Installing com.myapp.myapp
 DEVICE SHELL COMMAND: pm install -r "/data/local/tmp/com.myapp.myapp"
 pkg: /data/local/tmp/com.myapp.myapp
 Success

com.myapp.myapp в этом случае - это имя пакета, который вы должны использовать для удаления.

Ответ 2

У меня была такая же проблема, и решение adb uninstall не работало для меня.

Что работало

  • На устройстве перейдите в меню "Настройки- > Приложения"
  • Выберите свое приложение, и в меню выберите "Удалить для всех пользователей"

Даже если я ранее удалил приложение, он все еще был в списке.

Ответ 3

Для меня, если приложение предназначено для распространения, решение adb является не-go: вы не можете попросить одного друга установить на вашем компьютере Android файл sdk!

Здесь вы можете отредактировать AndroidManifest.xml и увеличить атрибут android:versionCode в теге <manifest> (который является корневым элементом).

Это приведет к обновлению установленного приложения

Ответ 4

Если вы видите это при проведении подключенных тестов, обязательно удаляйте .test при удалении через adb, потому что удаление из приложения → настроек не позволяет избавиться от тестовый пакет

adb uninstall your.broken.package.test

если вы просто удалите с помощью

adb uninstall your.broken.package

ваш тестовый пакет все равно будет там. Это было только то, что я заметил при использовании командной строки gradle, не сталкивался с этой проблемой в студии Android.

Ответ 5

Удалите старое приложение с телефона или эмулятора и попробуйте снова запустить.

Ответ 6

Я получил эту ошибку при попытке установить выпуск при подписании сертификата.

исправлено с: приложение Gradle task uninstallRelease, а затем installRelease снова

Ответ 7

Для пользователей Unity, которые приходят на этот вопрос, лучшим ответом будет ответ @Ehsan выше.

adb uninstall "com.yourapp.yourapp"

Я уже установил предыдущую версию на свое устройство Android, затем выбрал " Development Build в Unity> "Настройки сборки", из-за чего APK использовал другую подпись. Если вы устанавливаете через Android GUI, он на самом деле не удалит все, поэтому вам придется использовать ADB.

Ответ 8

Удаление приложения с мобильного устройства и запуск его снова решил проблему для меня.