Falla [INSTALL_FAILED_UPDATE_INCOMPATIBLE] incluso si la aplicación parece no estar instalada

206

Cuando intento implementar mi aplicación en el dispositivo Android, aparece el siguiente error:

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

Soy consciente de esta pregunta pero la aplicación no está instalada. Visual Studio lo ha eliminado / eliminado parcialmente durante el intento de implementación.

En el pasado, resolví esto descargando la aplicación de Google Play Store y luego eliminándola de la configuración-> Administrador de aplicaciones. Sin embargo, ahora recibo el error "actualización incompatible" cuando intenta instalarlo.

Traté de eliminarlo con Titanium Backup y algunas otras cosas, pero no tuve suerte.

EDITAR 1

Me di cuenta (de @Motz) que no he mencionado que la solución obvia no funciona. A saber, la aplicación no aparece en Configuración-> Aplicaciones

YKa
fuente
¿Qué versión instalada en tu dispositivo?
Haresh Chhelana
Puede suceder si su aplicación requiere que la versión mínima del SDK sea superior a la versión del sistema operativo del dispositivo.
Haresh Chhelana
Busca logcatpistas adicionales cuando intentes instalar la aplicación. Debe haber una entrada de registro con más detalles de por qué está fallando.
Jeff Mixon el
¿Qué versión de Android tiene tu teléfono?
Darpan
Mi versión de Android es 4.4.2. El SDK mínimo está bien porque instalé la aplicación antes y porque la revisé.
YKa

Respuestas:

565

He visto esto varias veces. Por lo general, se debe a que tengo una versión de lanzamiento firmada en mi teléfono, y luego intento implementar la versión de depuración en la parte superior. Se atasca en un estado no válido donde no está completamente desinstalado.

La solución que funciona para mí es abrir un símbolo del sistema y escribir:

adb uninstall my.package.id

Eso generalmente completa la desinstalación para que pueda continuar el desarrollo.

¡Buena suerte!

Kiliman
fuente
1
Esto funcionó para mí cuando reiniciar y desinstalar la aplicación no lo hizo.
Agresor
26
Stackoverflow debería tener una lista de respuestas favoritas. Esta pieza de brujería funciona a las mil maravillas.
Josh
2
Si está utilizando un dispositivo Android para realizar pruebas y si instala su aplicación en otra máquina, y luego intenta instalar en su máquina, aparecerá este error. Esta solución funciona
SajithK
Me salvaste el día ... Había una versión dañada de la aplicación instalada en el Administrador de aplicaciones (no se muestra en la sección de aplicaciones). Quería desinstalarlo antes de implementarlo
Anees Deen
1
Dios bendiga a StackOverflow y usted, señor, por resolver los problemas que Xamarin debe abordar: \
Eric Wu
79

No es necesario hacer nada adb uninstall, solo ve a tu settings->appsy luego desinstala desde allí. Verá su aplicación atenuada.

Los problemas generalmente tienen que ver con una versión de lanzamiento vs depuración como @Kiliman que se menciona aquí.

JamesMontemagno
fuente
1
Lo siento @Motz, esa fue una de las primeras cosas que hice, pero la aplicación no está en aplicaciones ... Edité mi pregunta ahora
YKa
ACTUALIZACIÓN: Al usar Android 5.0 (lollipop) esto ahora también funciona. La aplicación con un tamaño de 0.00KB se muestra y luego puedo desinstalarla fácilmente.
YKa
2
Configuración> Aplicaciones> desinstalar no siempre funciona. A veces hay problemas con múltiples perfiles de usuario y no se desinstalan para todos los usuarios. O la aplicación se desinstaló hasta la mitad en mal estado. adb uninstalltomaría de esos escenarios.
wisbucky
Esto no siempre es cierto. A menudo he hecho esto en el pasado y ha funcionado perfectamente. Pero hoy mi aplicación simplemente no estaba allí. Y tampoco estaba al final de la lista de aplicaciones (a veces hay que desinstalar para todos los usuarios en lugar de simplemente desinstalar para el usuario actual). adb uninstallFuncionó perfectamente.
yo--
30

Desinstalar la aplicación sería suficiente para evitar este problema.

INSTALL_FAILED_UPDATE_INCOMPATIBLE

pero a veces incluso la desinstalación del mensaje se genera nuevamente, ocurre en Android OS 5.0 +, por lo que esta es la solución:

Vaya a Settings> Appsy encontrará su aplicación con el mensaje:

"No instalado para este usuario"

, tenemos que desinstalar manualmente para todos los usuarios con la opción:

"Desinstalar para todos los usuarios"

Jorgesys
fuente
1
Si, funciona. Después de la desinstalación para todos los usuarios, ionic cordova run android --device¡funciona! Tks!
Diego Somar
10

Debe asegurarse de que la aplicación esté desinstalada.

En su teléfono, intente ir settings/applicationsy mostrar la lista de todas sus aplicaciones instaladas, luego asegúrese de que la aplicación esté desinstalada para todos los usuarios (en mi caso, la había desinstalado, pero aún para otros).

Terranología
fuente
5

Por lo general, me enfrento a este problema en los dispositivos con versión Android 5.0+. Dado que tiene cuentas de perfiles multiusuario en los mismos dispositivos. Cada aplicación se instalará como una instancia separada para todos los usuarios. Asegúrese de desinstalar para todos los usuarios como se muestra a continuación.

ingrese la descripción de la imagen aquí

Nagendra Badiganti
fuente
5

Accidentalmente tuve dos dispositivos conectados.

Después de quitar un dispositivo, el INSTALL_FAILED_UPDATE_INCOMPATIBLEerror se ha ido.

Ano
fuente
También sucede si el emulador se está ejecutando accidentalmente cuando no lo esperaba
blub
2

Desinstale el apk (aplicación que está trabajando) de su dispositivo Android y luego vuelva a ejecutarlo.

Dean Gite
fuente
1

Simplemente puede agregar un parámetro para ejecutar, consulte:

Run --> Parameters

En los parámetros de campo add -cleaninstall

Ahora solo ejecute, siempre harán una limpieza profunda antes de la instalación.

Arthur Freitas
fuente
1

Ok, desinstale la aplicación, pero ¿admitimos que los datos no deben perderse? Esto puede resolverse, actualizando versionCode y versionName e intente la aplicación en modo "Release".

Por ejemplo, esto es importante cuando queremos probar la migración de nuestra base de datos. Podemos comparar nuestra aplicación en Play Store con la aplicación real que aún no se ha lanzado.

AlexPad
fuente
1

En mi caso. Instalé la aplicación de la versión de lanzamiento. Y después de desinstalar la aplicación de mi dispositivo. La cosa funciona bien.

Shan Liu
fuente
0

En mi caso, estaba obteniendo esto cuando cambié la versión de destino mínima del Android y cuando volví a cambiar a la original (cuando creé el proyecto al principio). Entonces para eso la desinstalación funcionó. Pero cuando cambié mi versión de Android a la última, la estaba obteniendo nuevamente. Para solucionarlo, fui a las propiedades del proyecto de Android y en la sección de manifiesto de Android, agregué un nombre de paquete, por ejemplo, com.dotnetdreamer.net. Si ya tiene un nombre de paquete, simplemente puede cambiarle el nombre a otro.

Idrees Khan
fuente
Cambié la "Versión de compilación de destino" de mi aplicación de 4.4.2 a 5.0.1. Ahora no puedo actualizar la última versión de mi aplicación sobre la versión publicada anteriormente firmada con la misma clave. ¿Pueden proporcionarme una URL que explique / discuta este problema, ya que necesito compartirlo con mis clientes? Estoy usando eclipse y también he tratado de resolver este problema a tu manera, pero no puedo encontrar la sección "Manifiesto de Android" dentro de las propiedades del proyecto. ¿Puedes por favor ayudarme? Gracias
Abdul Rehman
0

Una forma simple es cambiar el nombre del paquete y ejecutarlo nuevamente

Meysam Khoshbakht
fuente
0

Eliminar todos los archivos de la aplicación del teléfono

Para automatizar la eliminación de una aplicación en su teléfono, puede seguir los pasos a continuación. Puede ser muy útil eliminar su aplicación y los datos de la aplicación de una manera rápida y limpia.

Cree un archivo de texto con este código y guárdelo como Uninstall.sh. Vaya a la carpeta (donde la ha colocado) de este script en la terminal y haga: sh Uninstall.sh YOURNAMESPACE

Ahora se eliminará su carpeta de espacio de nombres (incluidos los archivos de aplicaciones y la base de datos guardados).

  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

Eliminar todos los archivos de la aplicación de la PC

Cree un archivo de texto con este código y guárdelo como DeleteBinObj.sh.

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

Vaya a la carpeta de su proyecto donde coloca este script y lo hace en la terminal: sh DeleteBinObj.sh

Robin Bruneel
fuente
0

En caso de que esto ayude a alguien, implementé mi aplicación en Google Play, cuando la desinstalé e intenté ejecutar una depuración en mi dispositivo (nueva versión) recibí este mensaje de actualización fallido.

No pude ver la aplicación en mi dispositivo (ya estaba desinstalada), así que:

Instalé la primera versión nuevamente desde Google Play

Configuración abierta / Aplicación / Nombre de la aplicación

Borró los datos

Despejó la caché

Desinstaló la aplicación

Ahora puede implementar la versión de depuración nuevamente en el dispositivo :)

DHLopez
fuente
0

Si está utilizando un dispositivo Samsung y, por casualidad, marcó su aplicación para Samsung Knox, entonces debe desinstalarla de la aplicación My Knox.

La desinstalación solo de las aplicaciones generales no la desinstalará de la aplicación Knox. ¡Tiene que hacerse explícitamente!

Uttam Byragoni
fuente
0

Usando Ionic con Cordova a través de la línea de comando ...

ionic cordova run android --prod

Me encontré con esto y descubrí que había eliminado la versión de lanzamiento de una instalación de prueba anterior, pero tenía una versión de depuración antigua que estaba colgando en el cajón de aplicaciones que me perdí. Desconecté mi dispositivo de la computadora, abrí el cajón de aplicaciones y usé "Buscar aplicaciones ..." para encontrar todas las instancias de la aplicación para desinstalarlas. Luego volví a enchufar el dispositivo a la computadora y viola, ¡funcionó!

Gracias por la ayuda a todos!

Shane McCurdy
fuente
0

Espero que esto ayude a alguien en el futuro, pero simplemente vaya a usted config.xml, dentro de la widgetetiqueta, cambie la identificación predeterminada ( io.ionic.starter) a su propia identificación. Echa un vistazo a esto para nombrar paquetes de Android.

Zack
fuente
0

La firma no coincide con tu aplicación actual anterior y el nuevo APK

Por lo tanto, desinstale la aplicación anterior y gradlew clean e instale nuevamente apk

react-native run-android

react-native run-ios

Keshav Gera
fuente
0
  1. Desinstale su aplicación del dispositivo conectado (emulador o móvil)
  2. puso el terminal en la carpeta del proyecto cd android 3, luego ejecute ./gradlew clean, limpie su compilación 4 cd..y ejecute por debajo de 5 react-native run-android
Pawan
fuente