Respostas:
Se você instalar o aplicativo no seu dispositivo via, adb install
deverá procurar a opção de reinstalação que deveria ser -r
. Portanto, se você adb install -r
tiver, poderá instalar sem desinstalar antes.
adb install -r
removeria primeiro e depois instalaria ou atualizaria meu aplicativo. Embora adb
a descrição não seja muito clara ( -r: substitua o aplicativo existente ), adb install -r
ele atualiza seu aplicativo e não remove os dados do aplicativo. Portanto, adequado para testar a atualização do seu aplicativo (que é a informação que eu estava procurando).
adb install -r
não funcionar: acho que o .apk
arquivo que você está tentando instalar não foi assinado com o mesmo certificado de desenvolvedor que o .apk
arquivo instalado no dispositivo. Isso acontece facilmente se você instalou um aplicativo de depuração e está tentando instalar o aplicativo Release ou o contrário. Você não pode atualizar um aplicativo se ele não estiver assinado com o mesmo certificado.
Você está recebendo esse erro porque já existe um aplicativo com um nome de pacote igual ao seu aplicativo. Se você tiver certeza de que não instalou o mesmo aplicativo antes, altere o nome do pacote e tente.
Senão, aqui está o que você pode fazer:
adb uninstall my.package
. Estranhamente, ele não desinstalou as prefs que eu queria remover, mas se livrou do pacote, que era o que estava me impedindo de reinstalá-lo.
Isso pode significar que o aplicativo já está instalado para outro usuário no seu dispositivo. Usuários compartilham aplicativos. Eu não sei por que eles fazem, mas eles fazem. Portanto, se um usuário atualizar um aplicativo, ele também será atualizado para o outro usuário. Se você desinstalar em um, ele não removerá o aplicativo do sistema no outro.
adb install <package.apk>
continuava falhando, mesmo que o aplicativo não estivesse mais visível na lista de aplicativos. Acontece que ele ainda estava lá na outra conta do meu dispositivo ... Obrigado!
adb install -r exampleApp.apk
(O -r
faz substituir a cópia existente, adicione um -s
se estiver instalando em um emulador)
Verifique se o aplicativo está assinado da mesma forma e é a mesma debug/release
variante
Eu configurei um alias no meu ~/.bash_profile
, para torná-lo um comando 2char.
alias bi="gradlew && adb install -r exampleApp.apk"
(Abreviação de Build and Install)
Se você ainda estiver enfrentando um problema, tente desinstalar o aplicativo usando o prompt de comando. basta adicionar o comando adb uninstall com.example.yourpackagename
e tentar reinstalar novamente.
No meu tablet Android 5, sempre que tento usar o adb, para instalar um apk de versão assinada, recebo o [INSTALL_FAILED_ALREADY_EXISTS]
erro.
Eu tenho que desinstalar o pacote de depuração primeiro. Mas não consigo desinstalar usando o Gerenciador de aplicativos do dispositivo !
Se desinstalar a versão de depuração com o Application Manager , preciso executar novamente a variante de compilação de depuração do Android Studio e depois desinstalá-la usandoadb uninstall com.example.mypackagename
Finalmente, eu posso usar adb install myApp.apk
para instalar o apk da versão assinada.
adb install -r
nem sempre funciona (eu tenho um EVO 4G da Sprint que se recusa a se comportar conforme o esperado). A única solução alternativa encontrada foi a remoção manual do aplicativo. Às vezes, tenho que fazer isso através da interface do usuário do telefone, porque o EVO é muito temperamental.