Desinstalando apps obrigatórios do Android através do ADB

Importante!

Para começo de conversa, este tutorial NÃO COBRE a instalação do ADB e a ativação do Modo Depuração para que seja possível rodar comandos ADB.

Isso dito, vamos começar!

Para desativar um app imposto, via ADB, no seu celular, o básico é o que se segue abaixo.

1. Descubra a URI do aplicativo

A URI de qualquer app é algo como com.google.android.aicore. Você pode pesquisar pela interface do sistema Android abrindo os detalhes de qualquer app (segure no ícone e selecione “Informações do app”) ou pesquisar à doida pelo próprio shell.

Parada obrigatória!

Você já entrou no shell? digite o comando abaixo no terminal:

adb shell

Autorize do seu celular a conexão com o PC e logo aparecerá algo como:

rosemary:/ $ # o rosemary aí pode ser qualquer outra coisa

Esta já é a linha de comandos do ADB.

Retornando...

Busque pelo pacote loucamente através do comando da Polícia Militar (sim, isso é uma piada idiota), inserindo:

pm list packages

Vai aparecer uma lista de todos os pacotes Android parecida mais ou menos com isto:

package:com.exemplo1.app1
package:com.exemplo1.app2

É pra copiar apenas a parte depois do “package:” quando você identificar que tal URI corresponde ao app.

2. Desinstale o pacote para o seu usuário

Sabendo a URI do aplicativo, é bem fácil desativar, basta copiar toda a URI SEM A PARTE que a precede (“package:“) e no comando exemplar abaixo troque o argumento URI_DO_APP pela cola da sua Área de transferência:

pm uninstall --user 0 URI_DO_APP

Se fosse do AI Core, ficaria assim:

pm uninstall --user 0 com.google.android.aicore

É relativam. simples. Se retornar “Success”, você já pode sair do shell com exit; desconectar o cabo USB e desativar o Modo Desenvolvedor.

Mas se não...

– Tales, deu falha no último comando da PM, o que eu faço??

Aí você vai ter que pesquisar mais a fundo. É possível que não dê certo seja porque o seu “usuário” Android não é o usuário correspondente ao código 0 (zero. Lembra do trecho --user 0?); ou porque existe algum bloqueio raro no seu celular/tablet.

Para o caso do erro relativo ao código de usuário, você pode tentar identificá-lo usando um gerenciador de arquivos como o Material Files, vendo o endereço completo de uma pasta comum (ex.: /storage/emulated/1234) para qualquer arquivo/pasta, bastando acessar as propriedades do mesmo.

Normalmente o 1234 acima se refere ao código do usuário Android. Então é só substituir no comando exemplar:

pm uninstall --user 1234 URI_DO_APP

Referências

Usei como base esta discussão no fórum de Android do StackExchange.

Você também pode ver por este tutorial como reinstalar um app desinstalado com esse comando.

by tales