En mi emulador, cuando intento hacer una actualización de mi apk mediante programación. Yo obtengo:
Android App Not Install.
An existing package by the same name with a conflicting signature is already installed
Todavía estoy en la fase de prueba de esta actualización, por lo que el archivo que descargo es un apk firmado de una versión anterior, que creo que debería funcionar sin ningún problema.
De la sugerencia en: un paquete existente con el mismo nombre con una firma confusa ya está instalado . Intenté ejecutar el emulador tanto en modo de depuración como en modo normal ... ninguno funcionó.
¿Alguna idea sobre lo que me estoy perdiendo?
android
android-install-apk
James Oravec
fuente
fuente
Respuestas:
El problema son las claves que se han utilizado para firmar los APK, de forma predeterminada si está ejecutando directamente desde su IDE y abriendo su emulador, el APK instalado en el emulador está firmado con su clave de depuración (generalmente instalada en ~ / .android /debug.keystore), por lo que si el APK anterior se firmó con una clave diferente a la que está usando actualmente, siempre obtendrá el conflicto de firmas, para solucionarlo, asegúrese de estar utilizando la misma clave para firmar ambos APK, incluso si el APK anterior se firmó con una clave de depuración de otro SDK, las claves definitivamente serán diferentes.
Además, si no sabe exactamente qué clave se utilizó antes para firmar el apk y, sin embargo, desea instalar la nueva versión de su aplicación, puede desinstalar la aplicación anterior y volver a instalar la nueva.
Espero que esto ayude...
¡Saludos!
fuente
Recibí el mismo mensaje de error, pero estas respuestas no me ayudaron. En un 4.3 nexus 7, estaba usando un usuario que NO era el propietario. Había desinstalado la versión anterior pero seguía recibiendo el mismo mensaje.
Solución: tuve que iniciar sesión como propietario e ir a Configuración -> Aplicaciones, luego deslizarme a la pestaña Todos. Desplácese hacia abajo hasta el final de la lista donde las versiones anteriores se enumeran con una marca 'no instalado'. Selecciónelo y presione el botón 'configuración' en la esquina superior derecha y finalmente 'desinstalar para todos los usuarios'
fuente
Vaya a Configuración> Aplicaciones, busque y abra la información de la aplicación. Luego, abra el menú de desbordamiento (3 puntos verticales) y elija Desinstalar para todos los usuarios.
fuente
Si no desea molestarse con el archivo de almacén de claves, simplemente elimine el paquete por completo para todos los usuarios.
Conecte su dispositivo con Mac / PC y ejecute
adb uninstall <package>
Trabajó para mi.
Ref: /android/92025/how-to-completely-uninstall-an-app-on-android-lollipop
fuente
Hay una diferencia entre los archivos APK firmados y sin firmar. Lo más probable es que hayas firmado anteriormente sin firmar. Solo necesita eliminar el sin firmar antes de instalar la versión firmada. La forma en que esto se puede lograr varía según la versión exacta, pero en general, vaya al emulador a configuración-> aplicación, haga clic largo en su aplicación y elimínela / elimínela / desinstálela.
fuente
app not installed
. Verifiqué la configuración del emulador y loAllow installation of apps from unknown sources
comprobé. Entonces, esta no parece ser la solución.Si está utilizando la apk de depuración, la clave que se utiliza para firmarla está en
Si usa esa misma clave, no debería haber un conflicto al instalar.
fuente
Si las soluciones anteriores no funcionaron para usted, es posible que tenga que hacer algo de la siguiente manera ...
1) instalar la aplicación desde la tienda de aplicaciones.
2) actualizándolo con el signo APK con la misma versión actualizada del nombre del paquete.
Básicamente, hay dos tipos de APK.
1) subiste a la tienda de juegos conocida como APK original.
2) descargar desde la tienda de juegos conocida como APK derivado.
En este caso, básicamente está descargando apk derivado y actualizándolo con el APK original.
Para que funcione bien, cargue el nuevo APK lanzado y firmado en el modo de prueba interna en Google Play Store y descargue el APK derivado para verificar el escenario de actualización.
fuente
Si usa varios usuarios en Android, verifique que la aplicación esté desinstalada en todas partes.
fuente
Tuve un problema en el que tanto la depuración como la versión de lanzamiento no se instalan en los dispositivos que utilicé para la depuración. El mismo mensaje aparecerá cuando intente instalar la nueva versión. La única solución era desinstalar la versión actual e instalar la nueva.
Parece que Android Studio marca el apk que instala para que la instalación utilizando los gestores de paquetes distinga entre la versión instalada para la depuración y las versiones descargadas de Google Play u otras fuentes externas (esto nunca me sucedió al usar eclipse).
fuente
Puede ser que la aplicación no se desinstale correctamente. Si su dispositivo es este caso, puede probar este método.
Primero obtenga el nombre del paquete de la aplicación, por ejemplo, 'com.xxx.app', puede usar Root Explorer y encontrarlo en el archivo Manifiesto (RE puede decodificar el archivo). entonces puedes usar este script para desinstalarlo:
fuente
Mismo error de paquete:
fuente
Tuve que iniciar sesión como propietario e ir a Configuración -> Aplicaciones, luego deslizar a la pestaña Todos. Desplácese hacia abajo hasta el final de la lista donde las versiones anteriores se enumeran con una marca 'no instalado'. Selecciónelo y presione el botón 'configuración' en la esquina superior derecha y finalmente 'desinstalar para todos los usuarios'
fuente
Puede haber otra razón por la cual su aplicación no se actualizará cuando cambie / agregue / elimine shareId en AndroidManifiest.
"android: sharedUserId"
Por favor, compruebe eso también.
Para evitarlo, recomendaría usar sharedUserId en su aplicación a pesar de sus requisitos actuales que necesita o ahora.
fuente
Intenté todo lo anterior y no funcionó.
Descubrí que, a pesar de desinstalar la aplicación, una nueva versión de la aplicación sigue dando el mismo error.
Esto es lo que lo resolvió: vaya a Configuración -> General -> Administrador de aplicaciones -> elija su aplicación -> haga clic en los tres puntos en la parte superior -> desinstalar para todos los usuarios
Una vez que haga esto, ahora está realmente desinstalado y ahora permitirá que se instale su nueva versión.
Espero que esto ayude.
fuente