Risposte:
Se installi l'applicazione sul tuo dispositivo tramite adb install
dovresti cercare l'opzione di reinstallazione che dovrebbe essere -r
. Quindi, se lo fai adb install -r
dovresti essere in grado di installare senza disinstallare prima.
adb install -r
rimuovere prima e quindi installare o aggiornare la mia app. Sebbene adb
la descrizione non sia molto chiara ( -r: sostituisce l'applicazione esistente ), adb install -r
aggiorna effettivamente la tua app e non rimuove i dati della tua app. Pertanto adatto per testare l'aggiornamento della tua app (che è l'informazione che stavo cercando).
adb install -r
non funzionare: suppongo che il .apk
file che si sta tentando di installare non sia stato firmato con lo stesso certificato di sviluppatore del .apk
file installato sul dispositivo. Succede facilmente se hai installato un'app di debug e stai provando a installare l'app di rilascio o viceversa. Non è possibile aggiornare un'applicazione se non è firmata con lo stesso certificato.
Viene visualizzato questo errore perché esiste già un'applicazione con un nome pacchetto uguale all'applicazione. Se sei sicuro di non aver installato la stessa applicazione prima, modifica il nome del pacchetto e prova.
Altrimenti, ecco cosa puoi fare:
adb uninstall my.package
. Stranamente, non ha disinstallato le preferenze che volevo rimuovere, ma si è sbarazzato del pacchetto, che era la cosa che mi stava impedendo di reinstallarlo.
Potrebbe significare che l'applicazione è già installata per un altro utente sul dispositivo. Gli utenti condividono le applicazioni. Non so perché lo facciano, ma lo fanno. Quindi se un utente aggiorna un'applicazione viene aggiornata anche per l'altro utente. Se si disinstalla su uno, non rimuove l'app dal sistema dall'altro.
adb install <package.apk>
continuava a fallire anche se l'app non era più visibile nell'elenco delle app. Si scopre che era ancora lì sull'altro account sul mio dispositivo ... Grazie!
adb install -r exampleApp.apk
(Lo -r
fa sostituire la copia esistente, aggiungere un -s
se l'installazione su un emulatore)
Assicurati che l'app sia firmata allo stesso modo e abbia la stessa debug/release
variante
Ho impostato un alias nel mio ~/.bash_profile
, per renderlo un comando 2char.
alias bi="gradlew && adb install -r exampleApp.apk"
(Abbreviazione di Build and Install)
Se il problema persiste, prova a disinstallare l'applicazione utilizzando il prompt dei comandi. basta aggiungere il comando, adb uninstall com.example.yourpackagename
quindi provare a reinstallare di nuovo. Funziona!
Con il mio tablet Android 5, ogni volta che tento di utilizzare adb, per installare un apk di versione firmato, ottengo l' [INSTALL_FAILED_ALREADY_EXISTS]
errore.
Devo prima disinstallare il pacchetto di debug. Ma non riesco a disinstallare usando Application Manager del dispositivo !
In tal caso, disinstallare la versione di debug con Application Manager , devo rieseguire la variante di build del debug da Android Studio, quindi disinstallarla utilizzandoadb uninstall com.example.mypackagename
Infine, posso usare adb install myApp.apk
per installare l'apk di rilascio firmato.
adb install -r
non funziona sempre (ho uno EVO 4G di Sprint che rifiuta di comportarsi come previsto). L'unica soluzione che ho trovato è rimuovere l'applicazione manualmente. A volte, devo persino farlo attraverso l'interfaccia utente del telefono perché EVO è così temperamentale.