Desinstalar completamente una aplicación en Lollipop

Tengo un problema con la desinstalación de aplicaciones en Android 5.0 (Nexus 5). Estoy desarrollando una aplicación para Android, así que depuro/ejecuto la aplicación directamente en mi dispositivo. Para la producción, exporté la misma aplicación con mi almacén de claves, desinstalé el APK de depuración que ejecuté anteriormente, intenté instalar el APK firmado y recibí este error:

Ya está instalado un paquete existente con el mismo nombre con una firma en conflicto.

¿Es porque los bytecodes todavía están en el tiempo de ejecución de ART? ¿Alguien tiene alguna idea de cómo resolver esto?

Respuestas (2)

Cuando desinstala una aplicación con el enfoque habitual anterior a Lollipop (p. ej., arrastrando hasta el ícono "papelera" o desde Información de la aplicación > Desinstalar ), solo se desinstala en el usuario actual . Se puede confirmar mediante la aplicación que muestra "No instalado" en el administrador de aplicaciones de stock. Android detectará que la aplicación todavía está allí, evitando que el usuario instale la aplicación con el mismo nombre de paquete.

Es debido a la cuenta de invitado (si está activada), que cuando se instala una aplicación, se instala automáticamente en todos los usuarios. Por lo tanto, también debe desinstalar la aplicación desde allí, lo que puede ser problemático en el uso diario.

Hay algunos enfoques para desinstalar la aplicación por completo (ordenados por practicidad):

  1. (desde la cuenta del propietario) Vaya a Configuración > Aplicaciones , busque y abra la información de la aplicación. Luego, abra el menú adicional (3 puntos verticales) y elija Desinstalar para todos los usuarios .
  2. (de la cuenta de invitado) Desactive la cuenta de invitado si no la necesita (para más información: Eliminación de la cuenta de usuario de invitado predeterminada de Android Lollipop )
  3. (desde la PC) Ingrese adb uninstall <package>en el símbolo del sistema/shell. Esto es lo mismo que "desinstalar para todos los usuarios"
  4. (de invitados/otras cuentas) Busque la aplicación y desinstálela normalmente.
    • En caso de que no pueda desinstalarlo, intente eliminar la cuenta y cree una nueva, luego intente encontrar y desinstalar la aplicación nuevamente.
¿Qué hay de las aplicaciones que tienen el botón Desinstalar desactivado? ¿Te gustan las aplicaciones del sistema que están duplicadas por aplicaciones de paquetes gapps?
@RobertKoritnik lo siento, eso está fuera del alcance de esta respuesta, ya que la desinstalación de aplicaciones del sistema necesita acceso de root, como esta pregunta .

Me las arreglé para desinstalar de esta manera:

  • Primero intenté desinstalar de la manera normal (usando Configuración-> Aplicaciones-> nombre de la aplicación-> desinstalar), lo que elimina la capacidad de ejecutarlo, pero claramente no se desinstala.
  • Ejecuté Google Play y busqué la aplicación.
  • Vi que el botón Desinstalar estaba inactivo, pero Instalar estaba activo, así que toqué Instalar . Ahora puedo ejecutar la aplicación.
  • Después de eso, el botón Desinstalar en Google Play está activo.
  • Toque Desinstalar para eliminar la aplicación.

¡Voila, se ha ido!

Supongo que el botón de desinstalación no estará visible a menos que la aplicación se actualice a la versión actual en playstore. Si no tiene una versión actualizada de la aplicación que está tratando de desinstalar de esta manera, le mostrará dos opciones, es decir, Abrir o Actualizar. Primero debe actualizar la aplicación y luego desinstalarla, que es un paso adicional que el usuario debe tomar, pero eso es inútil ya que el usuario quiere deshacerse de la aplicación.
@Firelord: 1) Sí, quiero decir que todo lo anterior se ejecutó dentro de la aplicación Google Play Store en su dispositivo móvil. La aplicación permite la desinstalación de aplicaciones que ya ha instalado (pero no desinstalará las aplicaciones que se cargaron previamente en su dispositivo, suspiro).
@Firelord 2) Aclaración: en el paso 3, uso la aplicación Google Play Store para volver a instalar la aplicación, lo que me permite ejecutarla. Regreso a Google Play Store (y nuevamente busco la aplicación en cuestión) para los pasos 4 y 5. Espero que eso aclare las cosas.