android - sistema - la desinstalación de adb falló
desinstalar facebook android (21)
Estoy escribiendo algunas aplicaciones de muestra.
Después de depurar estas aplicaciones, no veo un botón de desinstalación en la administración de aplicaciones de mi dispositivo.
Cuando hago la desinstalación de Adb, siempre dice Failure without any reason.
En DDMS vi que mi apk está almacenada en /data/app/com.k2g.leaveDemo-1.apk
.
No estoy seguro de lo que me estoy perdiendo.
Siempre tengo que restablecer mi dispositivo para deshacerme de estas aplicaciones :(
¿Necesito hacer firmar algo?
¿Necesito hacer algo en el modo de depuración?
¿O depende de la versión?
Estoy usando Samsung S2.
Abra su aplicación Manifest y verifique primero el paquete de la aplicación.
Después de eso, asegúrese de que su dispositivo esté configurado en modo de depurador.
Compruebe si ADB puede interactuar con su dispositivo:
dispositivos adb
Si su dispositivo está en la lista, ejecute:
adb desinstala PACKAGE_WRITTEN_IN_MANIFEST
Asegúrese de ingresar el nombre completo del paquete con el nombre de la aplicación:
com.domain.app
Debería tener que eliminar aplicaciones manualmente. Vaya a Configuración-> Administración de aplicaciones -> Ejecutar aplicación, tócalo y puedes eliminar, detener aplicaciones desde allí.
En mi caso, a menudo tengo este problema cuando comprozo una aplicación en modo de depuración y luego trato de instalar la aplicación firmada por Google.
Esto se debe a que ambas aplicaciones tienen el mismo nombre de paquete pero firmas diferentes. Desde que actualicé a Android lollypop, a veces incluso obtengo este error si desinstalo la aplicación a través de la configuración / Aplicaciones. Si tiene este problema, compruebe si la aplicación está instalada en otro perfil de usuario y desinstálela en todas las cuentas de usuario.
Esta no es una respuesta exacta, pero si está buscando desinstalar la aplicación porque tiene un .apk actualizado para instalar, puede intentar esto:
adb install -r yourapp.apk
La opción -r
le dice a adb que reinstale la aplicación
Esto funcionó para mí:
Este es el directorio donde se almacenan todos los APKs:
cd /system/app
Ponlos en una lista:
ls
Elija uno para eliminar.
pm install -r <app_to_remove>.apk
Ejemplo:
$ pm install -r Google-Play-services.apk
pkg: Google-Play-services.apk
Success
Noté que recibí un error si la aplicación que estoy tratando de eliminar se está ejecutando, así que mátalo primero.
Además, me di cuenta de que podría tener que ejecutar (en un dispositivo rooteado):
$ su
# mount -o remount +rw /
Intenta desactivar "Ejecución instantánea" desde la ventana de configuración
Me parece que adb shell pm uninstall <package>
funciona de manera coherente, donde adb uninstall <package>
no lo hace.
Parece que tienes una aplicación que contiene un Administrador de dispositivos oculto como este aquí: http://www.symantec.com/security_response/writeup.jsp?docid=2013-060411-4146-99
solo puede desinstalar una aplicación de este tipo cuando desactive el administrador del dispositivo primero. Puede usar https://play.google.com/store/apps/details?id=com.trendmicro.mtrt.hiddenDAcleaner para deshabilitarlo o hacerlo por su cuenta enviando la intención a la aplicación que invoca al receptor que lo hará deshabilitar el administrador del dispositivo.
Puede seguir los pasos a continuación para desinstalar la aplicación del dispositivo a través del símbolo del sistema.
- ejecuta el comando: adb -s [devicename] uninstall -k [nombre del paquete]. este comando conservará los datos y el caché en el dispositivo, pero eliminará la aplicación del dispositivo.
- Para eliminar los datos y la memoria caché también del dispositivo, junto con la aplicación, ejecute el siguiente comando. adb shell pm uninstall -k [nombre del paquete].
Si se muestra éxito, la aplicación se desinstala correctamente.
Puede ser algo tan simple como escribir el nombre del paquete en el caso equivocado ...
Tuve el mismo problema: resultó que estaba ingresando el nombre del paquete en minúsculas cuando el nombre real del paquete incluía caracteres en mayúscula.
adb uninstall -k <packageName - eg. com.test.app>
(Si está desinstalando explícitamente, probablemente no desee la -k que mantiene los directorios de datos y caché de la aplicación).
Sí, la administración de dispositivos móviles traería sus propios problemas, pero apuesto a que ''Fallo'' es un problema de dos2unix. En mis máquinas Linux, adb está agregando una nueva línea de DOS que causa ''Error'' porque la desinstalación cree que el carácter CR es parte del nombre del paquete. Elimine también ''-1.apk'' del final del nombre del archivo package-1.apk.
adb root
adb shell
pm list packages
pm uninstall com.android.chrome
En mi caso, tengo un teléfono que está en ''Modo seguro'' permanente, por lo que solo las aplicaciones en / system / app / tienen la oportunidad de ejecutarse. Así que los instalo para copiar los archivos .apk, luego los desinstalo masivamente y copio a / system / app /, borro / cache y reinicie. Ahora tengo más aplicaciones ejecutándose aunque en mdoe seguro.
# adb root
# pm list packages -3 > /root/bulkuninstall.txt
# vi /root/bulkuninstall.txt and check ^M characters at end of each line.
If ^M, then must run dos2unix /root/bulkuninstall.txt.
Remove ''-1.apk'' using vi search and replace:
:%s/-1/.apk//g
Or sed...
# cp /data/app/* /storage/sdcard1/APKs/
# for f in `cat /root/bulkuninstall.txt`; do echo $f; pm uninstall $f; done;
#
# echo Now remount system and copy the APK files to /system/app/
# mount | grep system
# mount -o remount,rw /dev/block/(use block device from previous step) /system
# cp /storage/sdcard1/APKs/* /system/app/
# reboot
encienda el poder de caché.
Si se trata de una aplicación interna de Android, es posible que necesites:
- shell adb
- monte -o rw, vuelva a montar -t yaffs2 / dev / block / mtdblock3 / system
- rm / system / app / your_app
- rm / data / data / your_app
- eliminar cualquier entrada en /data/system/packages.xml
- eliminar cualquier entrada en /data/system/packages.list
- edita AndroidManifest.xml y deshazte de android: sharedUserId = "android.uid.shared"
Esto es bajo su propio riesgo; - |, intente primero con el emulador ...
Si tiene problemas para desinstalar a través de adb, puedo recomendar la siguiente herramienta:
https://github.com/patrickfav/uber-adb-tools
puede usar comodines y admite múltiples dispositivos, también tiene un mejor manejo de errores que el ADB de vanilla (pero lo usa en segundo plano, por supuesto). Funcionará en su plataforma.
Descargo de responsabilidad completo: soy el desarrollador
Si usa el dispositivo Xiomi, debe iniciar sesión en la cuenta MI.
Después del registro exitoso puede instalar y desinstalar a través de ADB.
Supongo que habilitas el developer mode
en tu dispositivo Android y estás conectado a tu dispositivo y tienes acceso al shell ( adb shell
).
Una vez hecho esto, puede desinstalar la aplicación con este comando pm uninstall --user 0 <package.name>
. 0 es el ID de la raíz ; de este modo, no es necesario que enrute su dispositivo.
Aquí hay un ejemplo de cómo lo hice en mi dispositivo huawei p110 lite.
# gain shell access
$ adb shell
# check who you are
$ whoami
shell
# obtain user id
$ id
uid=2000(shell) gid=2000(shell)
# list packages
$ pm list packages | grep google
package:com.google.android.youtube
package:com.google.android.ext.services
package:com.google.android.googlequicksearchbox
package:com.google.android.onetimeinitializer
package:com.google.android.ext.shared
package:com.google.android.apps.docs.editors.sheets
package:com.google.android.configupdater
package:com.google.android.marvin.talkback
package:com.google.android.apps.tachyon
package:com.google.android.instantapps.supervisor
package:com.google.android.setupwizard
package:com.google.android.music
package:com.google.android.apps.docs
package:com.google.android.apps.maps
package:com.google.android.webview
package:com.google.android.syncadapters.contacts
package:com.google.android.packageinstaller
package:com.google.android.gm
package:com.google.android.gms
package:com.google.android.gsf
package:com.google.android.tts
package:com.google.android.partnersetup
package:com.google.android.videos
package:com.google.android.feedback
package:com.google.android.printservice.recommendation
package:com.google.android.apps.photos
package:com.google.android.syncadapters.calendar
package:com.google.android.gsf.login
package:com.google.android.backuptransport
package:com.google.android.inputmethod.latin
# uninstall gmail app
pm uninstall --user 0 com.google.android.gms
Tal vez estás tratando de desinstalar una aplicación que es un administrador de teléfono.
Para poder desinstalarlo, vaya a Ajustes> Seguridad> Administradores de teléfono. Si la aplicación está en la lista, desmarque y confirme la operación.
Después de eso, debe poder desinstalarlo usando el área de configuraciones de la aplicación o adb.
Tenía una instancia de un emulador ejecutándose y un dispositivo conectado.
Cuando ejecuté el comando `adb -d uninstall PACKAGE_NAME '', obtuve un error'' DELETE_FAILED_INTERNAL_ERROR '', pero cuando eliminé la instancia del Emulador, obtuve un'' éxito ''en el proceso de desinstalación.
Tuve un error al usar adb shell uninstall com.package.app/
eliminado / (así que adb shell desinstale com.package.app) y funciona
Usted tiene el nombre de la aplicación y no el nombre del paquete: primero debe conocer el nombre del paquete. Fot de esta cinta:
adb shel pm lista de paquetes
Una vez que tenga el nombre del paquete ( tenga cuidado, el nombre del paquete es como com.intel .... y no el paquete: com.intel ... ), tape:
adb shell pm desinstala -k "nombre_paquete"
y Bingo!
okey estaba en la misma situación que probé todo esto sin resultado ... y la última respuesta estuvo cerca ... Lo hice haciendo lo siguiente:
Para obtener el nombre correcto de su paquete, haga lo siguiente:
adb shell pm list packages | grep "name of your app here"
Debería ver el nombre correcto de su aplicación ... así que ahora solo funciona:
adb uninstall com.your-real-app-name
Finalmente el comando run funciona de nuevo:
ionic run android