La desinstalación de la aplicación del sistema falló al usar 'adb shell pm desinstalar'

Intenté forzar la desinstalación en ADB, pero fallé:

$ adb shell pm uninstall -k org.openintents.filemanager
$ adb shell pm list packages -f | grep -i manager
package:/system/app/FileManager.apk=org.openintents.filemanager

¿Qué salió mal aquí? ¿Qué puedo hacer?

Usé el administrador de aplicaciones interno y no hay una opción para eliminarlo.

Cuando elimine manualmente la aplicación de /system, recuerde eliminar su carpeta de datos correspondiente en /data/data/«identificador» También hay un seguimiento de la firma de apk anterior en /data/system/packages.xml que puede evitar la reinstalación de una versión reconstruida paquete con una clave diferente.
¿Qué quiso decir con ~" aplicación del sistema "?

Respuestas (3)

Bueno, dado que el FileManager.apkpaquete reside en un /system/app/directorio, es una aplicación del sistema. Entonces, la forma general de eliminarlo es:

adb shell
su
mount -o rw,remount /system
rm -rf /system/app/FileManager.apk
rm -rf /data/data/org.openintents.filemanager
mount -o ro,remount /system
exit
exit
Cuando ejecuto mount -o ro,remount /system, aparece un error: Dispositivo o recurso ocupado
@IgorG. Pude resolver eso respondiendo a un aviso en el dispositivo real.
@AlexB En realidad, no aparece ningún aviso. Este es un teléfono pirateado personalizado, supongo.
Trabajó para mí, asegúrese de que el dispositivo tenga acceso de root.

Editar : cuando vi el comentario a la respuesta de CommonsWare, no me di cuenta de que era lo mismo que el autor de la pregunta ... de todos modos, una pequeña explicación puede ser útil para alguien.

Como usted mismo comentó, la forma más fácil de desinstalar una aplicación del sistema es simplemente eliminar el .apkarchivo. Los comandos adb install/ adb uninstallson útiles para aplicaciones normales, no para aplicaciones del sistema . Dado que esta aplicación se encuentra en /system/app, adb uninstallno la eliminará.

Puede usar el comando sugerido ( rm /system/app/YourApp.apk), pero antes de la /systemcarpeta necesita tener acceso de escritura. Deberá ver cómo remount /systemen su dispositivo específico, intente buscar " android remount +rw /system" y su dispositivo).

Alternativamente, puede usar cualquier aplicación que pueda eliminar y volver a montar y tenga acceso de raíz, como Root Explorer y Astro

gracias aleadam ... la trama se complica porque el rm que eliminé el apk pero, tal vez, no el caché ... No puedo instalar desde el mercado ... eso falla ... parece que tengo que borrar el caché dalvik o simplemente revertir toda la ROM a una imagen de copia de seguridad... instalar en la línea cmd con adb ==> [INSTALL_FAILED_UPDATE_INCOMPATIBLE]... no se puede usar el mercado para descargar la instalación... aparece "error de instalación actualización incompatible"... estoy en un personalizado rom y tengo una copia de seguridad que tiene 2 semanas y puedo volver a eso.
enlace lo que debería haber hecho está en la segunda publicación en este hilo

El Failureproblema ' ' tiene más que ver con el shell adb que agrega una línea de DOS que termina con ^M (en CentOS Linux de todos modos). Coloque la lista de aplicaciones para desinstalar en un archivo y cópielo directamente en el dispositivo Android.

root@android:/root # dos2unix list-of-apps-to-uninstall.txt     
root@android:/root # for f in `cat list-of-apps-to-uninstall.txt` ; do echo $f; pm uninstall $f; done;