Error [INSTALL_FAILED_ALREADY_EXISTS] cuando intenté actualizar mi aplicación

388

cuando intenté actualizar mi aplicación con una nueva versión que tiene la misma firma que la anterior, se muestra el error anterior.

¿Qué me estoy perdiendo?

DroidBot
fuente

Respuestas:

756

Si instala la aplicación en su dispositivo a través de adb install, debe buscar la opción de reinstalación que debería ser -r. Entonces, si lo hace adb install -r, debería poder instalar sin desinstalar antes.

WarrenFe
fuente
1
adb install -rno siempre funciona (tengo un EVO 4G de Sprint que se niega a comportarse como se esperaba). La única solución que he encontrado es eliminar la aplicación manualmente. A veces, incluso tengo que hacerlo a través de la interfaz de usuario del teléfono porque el EVO es muy temperamental.
jww
21
Vine aquí porque quería saber si adb install -reliminaría primero y luego instalaría o actualizaría mi aplicación. Aunque adbla descripción no es muy clara ( -r: reemplazar la aplicación existente ), de adb install -rhecho actualiza su aplicación y no elimina los datos de su aplicación. Por lo tanto, es adecuado para probar la actualización de su aplicación (que es la información que estaba buscando).
Thibault D.
8
Para las personas que afirman adb install -rque no funciona: supongo que el .apkarchivo que está intentando instalar no fue firmado con el mismo certificado de desarrollador que el .apkarchivo instalado en el dispositivo. Sucede fácilmente si ha instalado una aplicación de depuración y luego está intentando instalar la aplicación Release o al revés. No puede actualizar una aplicación si no está firmada con el mismo certificado.
Thibault D.
1
Si usa varias cuentas, es posible que deba desinstalar todas las cuentas (consulte la respuesta de GregP). Esto funcionó para mí después de que hice eso.
JD Sandifer
no funciona, mi aplicación es una aplicación del sistema, y ​​esto no está resolviendo mi problema: /
htafoya
11

Obtiene ese error porque ya existe una aplicación con un nombre de paquete igual al de su aplicación. Si está seguro de que no ha instalado la misma aplicación antes, cambie el nombre del paquete e inténtelo.

De lo contrario, esto es lo que puedes hacer:

  1. Desinstale la aplicación del dispositivo: vaya a Configuración -> Administrar aplicaciones y elija Desinstalar O
  2. Desinstale la aplicación usando la interfaz de línea de comandos de adb: escriba adb uninstall Después de que haya terminado con este paso, intente instalar la aplicación nuevamente.
Muhammad Mubashir
fuente
Mi aplicación no aparecía en el menú o en la tienda de aplicaciones, pero la encontré gracias a los consejos de Muhammad.
DavidP
2
Esta no es una buena solución. ¿Qué pasa si tienes un montón de estados como SharedPrefs guardados en la aplicación? Si realiza una desinstalación del sistema, ¡tendrá que volver a configurar su aplicación nuevamente!
IgorGanapolsky
Esta fue la solución que necesitaba, adb uninstall my.package. Curiosamente, no desinstaló las preferencias que quería eliminar, pero eliminó el paquete, que era lo que me impedía reinstalarlo.
JMD
6

Puede significar que la aplicación ya está instalada para otro usuario en su dispositivo. Los usuarios comparten aplicaciones. No sé por qué lo hacen, pero lo hacen. Entonces, si un usuario actualiza, una aplicación también se actualiza para el otro usuario. Si desinstala en uno, no elimina la aplicación del sistema en el otro.

GregP
fuente
Este fue mi problema exacto! Seguí intentando desinstalar, tanto con adb como manualmente, pero adb install <package.apk>seguía fallando aunque la aplicación ya no era visible en la lista de aplicaciones. Resulta que todavía estaba allí en la otra cuenta en mi dispositivo ... ¡Gracias!
JD Sandifer
Esto también me lo arregló. Para obtener información sobre cómo desinstalar un dispositivo para todos los usuarios, tuve que ir a Configuración> Aplicaciones, tocar la aplicación, tocar los puntos suspensivos en la parte superior derecha y tocar Desinstalar para todos los usuarios.
d219
3

Instalar

adb install -r exampleApp.apk

(Esto -rhace que reemplace la copia existente, agregue una -ssi se instala en un emulador)

Asegúrese de que la aplicación esté firmada de la misma forma y que sea la misma debug/releasevariante

Prima

Configuré un alias en mi ~/.bash_profile, para que sea un comando 2char.

alias bi="gradlew && adb install -r exampleApp.apk"

(Corto para construir e instalar)

Gibolt
fuente
0

Si aún tiene problemas, intente desinstalar la aplicación mediante el símbolo del sistema. simplemente agregue el comando e adb uninstall com.example.yourpackagename intente volver a instalarlo de nuevo. ¡Funciona!

Sanket Sangani
fuente
0

Con mi tableta Android 5, cada vez que intento usar adb, para instalar un apk de lanzamiento firmado, recibo el [INSTALL_FAILED_ALREADY_EXISTS]error.

Primero tengo que desinstalar el paquete de depuración. ¡Pero no puedo desinstalar usando el Administrador de aplicaciones del dispositivo !

Si desinstalo la versión de depuración con el Administrador de aplicaciones , entonces tengo que volver a ejecutar la variante de compilación de depuración desde Android Studio, luego desinstalarla usandoadb uninstall com.example.mypackagename

Finalmente, puedo usar adb install myApp.apkpara instalar el apk de lanzamiento firmado.

BlueSpectrumz
fuente