2012-09-18 4 views
33
adb install foo.apk 

Quando si utilizza questo comando, se esiste l'apk, dovrei ottenere l'errore * Fallimento [INSTALL_FAILED_ALREADY_EXISTS] *adb - Come reinstallare un'app, senza conservare i dati?

adb install -r myapp-release.apk 

In questo caso, l'apk esistente sarà sostituito, conservando i vecchi dati secondo per la documentazione,

'-r' mezzi reinstallare l'applicazione, mantenendo i suoi dati

Ora come posso reinstallare l'app, ma tutti i dati precedenti dovrebbero essere cancellati?

EDIT

So che possiamo fare questo

adb uninstall com.package.foo & adb install foo.apk 

Volevo solo sapere se c'è un comando o una via di adb sé.

+0

ciao, provo: adb install -r myapp-release.apk Ma non posso aggiornare l'app, voglio aggiornare l'app senza creare dati, conosci la soluzione? – mohammad

risposta

29

Prima dell'installazione pulire i dati come questo:

adb shell pm clear com.package.foo 

è possibile installare normalmente utilizzando:

adb install foo.apk 

o semplicemente scorrere il tuo IDE

8

Provare adb uninstall yourpackage.whatever.com, quindi installare di nuovo. Oppure selezionare Cancella dati sul telefono per quella applicazione.

+1

sì. Lo sapevo .. mi chiedevo solo se ci fosse un modo adb. – SatheeshJM

4

No. Non esiste un modo (documentato) per farlo con il comando adb install. Invece, si dovrebbe fare questo:

adb uninstall com.your.package 
adb install foo.apk 
+0

in realtà dovrebbe essere 'adb uninstall com.foo.foo' Volevo solo sapere se c'era un comando in adb stesso – SatheeshJM

+0

ah, woops, buon punto. lo modificherò per i futuri googler. –

3

È adb uninstall com.package.foo && adb install foo.apk , tuttavia la disinstallazione non funzionerà se l'app è un'app di sistema, che non può essere disinstallata. C'è il comando adb shell pm clear packageName per cancellare i dati di una certa app, tuttavia potrebbe richiedere root. Per reinstallare l'apk come al solito adb install -r app.apk