Falha na desinstalação do aplicativo do sistema usando 'adb shell pm uninstall'


20

Tentei forçar a desinstalação no ADB, mas falhei:

$ 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

O que deu errado aqui? O que eu posso fazer?

Usei o gerenciador de aplicativos interno e não há uma opção para excluí-lo.


1
Ao excluir manualmente o aplicativo de / system, lembre-se de excluir a pasta de dados correspondente em / data / data / «identifier». Também há uma faixa da assinatura apk anterior em /data/system/packages.xml que pode impedir a reinstalação de uma reconstrução pacote com uma chave diferente.
anddam

O que você quis dizer com ~ " aplicativo do sistema "?
IgorGanapolsky

Respostas:


18

Bem, como o FileManager.apkpacote reside em um /system/app/diretório, é um aplicativo do sistema. Portanto, a maneira geral de removê-lo é:

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

1
Quando eu executo mount -o ro,remount /system, recebo um erro: Dispositivo ou recurso ocupado
IgorGanapolsky

1
@IgorG. Consegui resolver isso respondendo a uma solicitação no dispositivo real.
Alex B

@AlexB Na verdade, nenhum prompt ocorre. Este é um telefone personalizado com bootlegged, eu acho.
IgorGanapolsky

10

Edit : quando vi o comentário na resposta do CommonsWare, não percebi que era o mesmo que o autor da pergunta ... de qualquer maneira, uma pequena explicação pode ser útil para alguém.

Como você comentou, a maneira mais fácil de desinstalar um aplicativo do sistema é simplesmente excluir o .apkarquivo. Os comandos adb install/ adb uninstallsão úteis para aplicativos regulares, não aplicativos do sistema . Como este apk está localizado /system/app, adb uninstallnão o removerá.

Você pode usar o comando sugerido ( rm /system/app/YourApp.apk), mas antes da /systempasta precisar ter acesso de gravação. Você precisará ver como, remount /systemem seu dispositivo específico, tente pesquisar " android remount +rw /system" e seu dispositivo).

Como alternativa, você pode usar qualquer aplicativo que possa excluir e remontar e tenha acesso root, como Root Explorer e Astro


obrigado aleadam ... enredo engrossa porque a rm que eu removi o apk mas, talvez, não o cache .. Não consigo instalar a partir do mercado .. isso falha .. parece que eu tenho que limpar o cache do dalvik ou apenas reverter toda a ROM para uma imagem de backup ... instale na linha cmd com adb ==> [INSTALL_FAILED_UPDATE_INCOMPATIBLE] ... incapaz de usar o mercado para baixar a instalação ... obtenha "atualização incompatível com erro de instalação" ... estou em um personalizado rom e ter um backup que é de 2 semanas de idade e posso apenas reverter para isso.

ligação que eu deveria ter feito é no 2º post sobre esta discussão

1

O Failureproblema ' ' tem mais a ver com o shell adb anexando uma linha do DOS que termina com ^ M (no CentOS Linux de qualquer maneira). Coloque a lista de aplicativos para desinstalar em um arquivo e copie diretamente para o 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;
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.