Ошибка [INSTALL_FAILED_UPDATE_INCOMPATIBLE], даже если приложение не установлено


206

При попытке развернуть приложение на устройстве Android появляется следующая ошибка:

Deployment failed because of an internal error: Failure [INSTALL_FAILED_UPDATE_INCOMPATIBLE]

Мне известен этот вопрос, но приложение не установлено. Он был удален / частично удален Visual Studio при попытке развертывания.

В прошлом я решил эту проблему, загрузив приложение из магазина Google Play, а затем удалив его из настроек-> Диспетчер приложений. Тем не менее, теперь я получаю сообщение об ошибке «несовместимое обновление», когда он пытается установить его.

Я попытался удалить его с помощью Titanium Backup и нескольких других вещей, но безуспешно.

РЕДАКТИРОВАТЬ 1

Я понял (из @Motz), что я не упомянул, что очевидное решение не работает. А именно приложение не отображается в Настройки-> Приложения


Какая версия установлена ​​на вашем устройстве?
Хареш Чхелана

Это может произойти, если вашему приложению требуется минимальная версия SDK, более высокая, чем версия ОС вашего устройства.
Хареш Чхелана

Проверьте logcatналичие дополнительных подсказок при попытке установить приложение. Там должна быть запись в журнале с более подробной информацией о том, почему это не удается.
Джефф Миксон

Какая версия Android у вашего телефона?
Дарпан

Моя версия Android 4.4.2. Минимальный SDK - это хорошо, потому что я установил приложение раньше и потому что я его проверил.
YKa

Ответы:


565

Я видел это несколько раз. Обычно это происходит из-за того, что на моем телефоне была подписанная версия, а затем попытка развернуть отладочную версию поверх. Он застрял в недопустимом состоянии, где он не полностью удален.

Решение, которое работает для меня, состоит в том, чтобы открыть командную строку и набрать:

adb uninstall my.package.id

Это обычно завершает удаление, чтобы я продолжил разработку.

Удачи!


1
Это работало для меня, когда перезапуск и удаление приложения не.
Агрессор

26
Stackoverflow должен иметь список любимых ответов. Эта часть колдовства работает как шарм.
Джош

2
Если вы используете устройство Android для тестирования, и если вы устанавливаете приложение на другой компьютер, а затем пытаетесь установить на свой компьютер, эта ошибка появится. Это решение работает.
SajithK

Вы спасли мой день ... В Диспетчере приложений установлена ​​какая-то поврежденная версия приложения (она не отображается в разделе приложений). Я хотел удалить его перед развертыванием
Anees Deen

1
Да благословит Бог StackOverflow и вас, сэр, за решение вопросов, которые должен решить Xamarin: \
Eric Wu

79

Не нужно делать adb uninstall, просто перейдите к вашему settings->appsи затем удалите оттуда. Вы увидите, что ваша заявка недоступна.

Проблемы обычно связаны с версией выпуска или отладки, такой как @Kiliman, отмеченной здесь.


1
Извините @Motz, это было на самом деле одним из первых, что я сделал, но приложение не в приложениях ... Я редактировал свой вопрос сейчас
YKa

ОБНОВЛЕНИЕ: При использовании Android 5.0 (леденец на палочке) это теперь работает тоже. Приложение размером 0,00 КБ показывает, и я могу легко удалить его.
YKa

2
Настройки> Приложения> Удаление не всегда работает. Иногда возникают проблемы с несколькими профилями пользователей, которые не удаляются для всех пользователей. Или приложение было удалено на полпути в плохом состоянии. adb uninstallвзял бы из этих сценариев.
Висбуки

Это не всегда верно. Часто я делал это в прошлом, и это сработало идеально. Но сегодня моего приложения просто не было. И это не было в конце списка приложений (иногда вы должны удалить для всех пользователей, а не просто для текущего пользователя). adb uninstallработал отлично.
я--

30

Чтобы избежать этой проблемы, достаточно удалить приложение.

INSTALL_FAILED_UPDATE_INCOMPATIBLE

но иногда даже удаление сообщения возникает снова, это происходит в Android OS 5.0+, так что это решение:

Перейдите к Settings> Appsи вы найдете ваше приложение с сообщением:

«Не установлен для этого пользователя»

, мы должны удалить вручную для всех пользователей с опцией:

«Удалить для всех пользователей»


1
Да, это работает. После удаления всех пользователей ionic cordova run android --deviceработает! Tks!
Диего

10

Вы должны убедиться, что приложение удалено.

В своем телефоне попробуйте перейти settings/applicationsи показать список всех установленных приложений, а затем убедитесь, что приложение удалено для всех пользователей (в моем случае я удалил приложение, но все же для других).


5

Я обычно сталкиваюсь с этой проблемой на устройствах Android версии 5.0+. Так как он имеет многопользовательские профили учетных записей на одних и тех же устройствах. Каждое приложение будет установлено как отдельный экземпляр для всех пользователей. Обязательно удалите для всех пользователей, как показано на скриншоте ниже.

введите описание изображения здесь


5

Я случайно подключил два устройства.

После удаления одного устройства INSTALL_FAILED_UPDATE_INCOMPATIBLEошибка исчезла.


Также происходит, если эмулятор работает случайно, когда вы этого не ожидали
blub

2

Удалите apk (приложение, с которым вы работаете) с устройства Android, а затем снова запустите.


1

Вы можете просто добавить параметр для запуска, смотрите:

Run --> Parameters

В полевых параметрах add -cleaninstall

Теперь просто запустите, они всегда будут делать глубокую чистку перед установкой.


1

Хорошо, удалите приложение, но мы признаем, что данные не должны быть потеряны? Это можно решить, обновив versionCode и versionName и попробуйте приложение в режиме «Release».

Например, это важно, когда мы хотим попробовать выполнить миграцию нашей базы данных. Мы можем сравнить наше приложение на игровом магазине с реальным приложением, которое еще не выпущено.


1

В моем случае. Я установил релиз-версию приложения. И после удаления приложения с моего устройства. Все работает отлично.


0

В моем случае я получал это, когда переключал минимальную целевую версию андроида и когда менял обратно на исходную (когда я сначала создавал проект). Так что для того, чтобы удаление работало. Но когда я изменил свою версию Android на последнюю, я снова получил ее. Чтобы это исправить, я зашел в свойства проекта Android и в разделе манифеста Android добавил имя пакета, например com.dotnetdreamer.net. Если у вас уже есть имя пакета, вы можете просто переименовать его в другое.


Я изменил «версию целевой сборки» моего приложения с 4.4.2 на 5.0.1. Теперь я не могу обновить последнюю версию своего приложения поверх ранее выпущенной версии, подписанной тем же ключом. Можете ли вы предоставить какой-либо URL-адрес, объясняющий / обсуждающий эту проблему, поскольку мне нужно поделиться им с моими клиентами. Я использую eclipse и также пытался решить эту проблему по-своему, но не могу найти раздел «Манифест Android» в свойствах проекта. Можете ли вы помочь? Спасибо
Абдул Рехман


0

Удалить все файлы приложения с телефона

Чтобы автоматизировать удаление приложения на вашем телефоне, вы можете использовать следующие шаги. Может быть очень полезно быстро и чисто удалить ваше приложение и данные приложения.

Создайте текстовый файл с этим кодом и сохраните его как Uninstall.sh. Перейдите в папку (где вы его положили) этого скрипта в терминале и выполните: sh Uninstall.sh YOURNAMESPACE

Теперь ваша папка пространства имен (включая сохраненные файлы приложений и базу данных) будет удалена.

  echo "Going to platform tools $HOME/Library/Android/sdk/platform-tools"
  cd $HOME/Library/Android/sdk/platform-tools
  echo "uninstalling app with packagae name $1"
  ./adb uninstall $1

Удалить все файлы приложения с ПК

Создайте текстовый файл с этим кодом и сохраните его как DeleteBinObj.sh.

find . -iname "bin" -o -iname "obj" | xargs rm -rf

Перейдите в папку вашего проекта, где вы разместите этот скрипт и выполните в терминале: sh DeleteBinObj.sh


0

В случае, если это кому-то поможет, я развернул свое приложение в Google Play, когда я удалил его и попытался запустить отладку на моем устройстве (новая версия), я получал это сообщение об ошибке обновления.

Я не мог видеть приложение на своем устройстве (оно уже было удалено), поэтому я:

Установил снова первую версию из гугл плей

Открытые Настройки / Приложение / Имя приложения

Очистил данные

Очистил кеш

Деинсталлировал приложение

Теперь вы можете снова развернуть отладочную версию на устройстве :)


0

Если вы используете Samsung Device и случайно отметили свое приложение для Samsung Knox, то вам необходимо удалить его из приложения My Knox.

Удаление только из общих приложений не приведет к его удалению из приложения Knox. Это должно быть сделано явно!


0

Использование Ionic с Cordova через командную строку ...

ionic cordova run android --prod

Я столкнулся с этим и обнаружил, что я удалил версию выпуска из предыдущей тестовой установки, но у меня была старая отладочная версия, которая висела в ящике приложений, который я пропустил. Я отключил устройство от компьютера, открыл ящик приложений и использовал «Поиск приложений ...», чтобы найти все экземпляры приложения, чтобы удалить их. Затем я снова подключил устройство к компьютеру и альту, все заработало!

Спасибо всем за помощь!


0

Я надеюсь, что это поможет кому-то в будущем, но просто перейдите к вам config.xml, внутри widgetтега, измените идентификатор по умолчанию ( io.ionic.starter) на свой собственный идентификатор. Посмотрите на это для именования пакетов Android.


0

Подпись Несоответствие вашего предыдущего настоящего приложения и нового APK

Поэтому, пожалуйста, удалите предыдущее приложение, очистите gradlew и снова установите apk.

реагировать-родной запуск андроид

Реакция-родной запуск IOS


0
  1. Удалить приложение с подключенного устройства (эмулятора или мобильного телефона)
  2. Получил терминал в папку проекта cd android 3, затем запусти ./gradlew cleanего, убери свою сборку 4 cd..и запусти ниже 5 react-native run-android
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.