Nel tuo percorso verso l'apprendimento dello sviluppo Android, ti troverai sicuramente a utilizzare uno strumento da riga di comando utilizzato per il debug chiamato ADB (Android Debug Bridge). Continua a leggere per saperne di più su cosa puoi fare con questo strumento principale comune a tutti gli sviluppatori Android.
Questo tutorial è per lo sviluppatore Java appena iniziato ad imparare Android, ma chi ha familiarità con Eclipse e ha installato Android SDK e Android Developer Plugin per Eclipse. I lettori dovrebbero anche avere familiarità con la riga di comando. Se non sei ancora preparato, consulta le esercitazioni precedenti di questa serie.
Lo strumento ADB viene avviato dalla riga di comando.
Al prompt dei comandi, digita semplicemente:
adb
Questo esegue ADB e mostra un elenco di una serie di comandi.
Se fate non vedere l'elenco dei comandi, tornare indietro e controllare le impostazioni del percorso di installazione e dell'ambiente, come descritto nelle precedenti esercitazioni. È possibile che sia installato il programma ADB, ma se non si dispone della variabile d'ambiente PATH della shell configurata correttamente, sarà necessario digitare il percorso completo del file in ADB sul terminale per avviare il programma. Fatto? Buono.
Quindi torna a quella lista di comandi. Lo strumento ADB ha due scopi. Il primo è consentire a molti altri strumenti Android di interagire con dispositivi ed emulatori. Il secondo è consentire a te, lo sviluppatore, di parlare con i dispositivi e gli emulatori emettendo diversi comandi manualmente.
I comandi ADB sono disponibili in due forme. Una forma di comando viene eseguita direttamente da ADB. Un'altra forma di comando, che non è direttamente ADB ma viene comunemente eseguita tramite ADB, viene eseguita tramite il comando "adb shell".
Ora, prima di proseguire, è in esecuzione un'istanza dell'emulatore o un dispositivo Android collegato al computer di sviluppo. Ora, se usi il comando dei dispositivi ADB, dovrebbe elencare tutte le istanze di dispositivi o emulatori collegati:
dispositivi adb
Dovresti vedere qualcosa di simile a questo:
In caso contrario, assicurarsi che l'emulatore sia in esecuzione o riavviare il server ADB.
Per riavviare il server ADB, ecco un altro comando per te:
adb stop-server adb start-server
Una volta che sei pronto, continua. Copriremo molti comandi, senza un ordine particolare.
Ecco una varietà di comandi eseguiti direttamente tramite ADB. Questo sarà seguito da diversi comandi che richiedono prima di aprire una shell.
È possibile copiare i file da e verso un dispositivo connesso utilizzando i comandi di spostamento ADB push e ADB.
adb pushadb pull
Questi comandi sono molto utili per cose come l'aggiornamento dei file XML di preferenza per la tua app durante i test e altre cose simili.
Puoi utilizzare ADB per installare o rimuovere app (apk) dai tuoi dispositivi. Utilizzare il comando install per installare un file pacchetto Android /
adb install
Allo stesso modo, puoi rimuovere un'app esistente dal nome del pacchetto.
adb uninstall
Potresti trovarti a dover disinstallare app se ti sposti tra macchine di sviluppo che non condividono la stessa chiave di firma dell'app. È anche un modo veloce per ripulire o caricare un dispositivo senza dover utilizzare Eclipse e il plug-in ADT.
È possibile eseguire il backup e ripristinare il contenuto di un dispositivo. Questo ha limitazioni sui dispositivi che non sono rootati.
adb backup adb restore
Vedere 'adb help' per tutte le opzioni di backup e ripristino. Ciò potrebbe essere utile per archiviare i dati delle app durante i test e quindi ripristinare facilmente questi dati per ripetere i test.
È possibile riavviare un dispositivo normalmente, nel bootloader o in modalità di ripristino.
adb reboot adb reboot recovery adb reboot bootloader
Nella nostra esperienza, questi non sono appropriati per l'emulatore. Tuttavia, ci sono momenti in cui i dispositivi Android si confondono e richiedono un riavvio difficile.
Lo strumento ADB ha un'interfaccia shell. Per emettere comandi shell, devi prima lanciare questa interfaccia digitando adb shell:
Adb shell
Una volta eseguito, sarai in un ambiente bash. Puoi eseguire comandi bash, come df per mostrare lo spazio libero su disco, tempo di attività per vedere per quanto tempo il dispositivo è stato in esecuzione o in uscita per uscire dall'interfaccia della shell:
Se non hai familiarità con Linux, potresti avere più difficoltà a spostarti nella shell. Ci sono numerose guide online che ti aiuteranno con comandi bash come ls, cp, cd e così via.
Qui ci sono diversi comandi speciali che puoi eseguire quando sei nella shell. Non tutti i comandi shell ADB funzionano su dispositivi fisici o emulatori.
È possibile utilizzare il comando logcat per visualizzare l'output di registrazione tanto quanto si fa in Eclipse:
adb shell logcat --help logcat -t 5
Ci sono molte opzioni disponibili con lo strumento logcat. Per impostazione predefinita, l'output arriva in tempo reale, proprio come fa quando viene visualizzato con Eclipse. Una caratteristica che è buona è che puoi inviare l'output a un file usando l'opzione -f.
Lo strumento bmgr è il gestore di backup. È possibile utilizzare questo strumento per attivare operazioni di backup e ripristino dei dati a livello di app. La tua app deve supportare i backup affinché ciò sia utile.
Puoi usare lo strumento scimmia per testare le tue app. Questo simula una varietà di diversi eventi di input dell'utente, proprio come una scimmia o un bambino che batte su una tastiera. Usalo per i test di stress.
Lo strumento Monkey può essere anche copiato e supporta flussi di eventi ripetibili attraverso l'opzione -s, in modo che i test possano essere rivisti e ripetuti.
È possibile eseguire comandi sqlite e interagire con i database dell'applicazione utilizzando anche la shell adb. Avrai bisogno dell'accesso in lettura / scrittura ai database che ti interessa ispezionare o modificare (in altre parole, le tue app, non altre).
Hai visto molto di ciò che ADB può fare per te. Dal frugare il file system al riavvio dei dispositivi per eseguire i comandi sqlite, non c'è molto che non si possa fare. C'è anche molto di più di quello che abbiamo trattato, compresa la gestione delle connessioni di rete, port forwarding, debug dump e molti comandi shell per tenerti occupato. Vedere la documentazione ufficiale ADB per un elenco completo di funzionalità
Sei sulla buona strada per lo sviluppo di Android. Quali tipi di app non vedi l'ora di creare? Fateci sapere nei commenti!
Gli sviluppatori mobili Lauren Darcey e Shane Conder hanno coautore diversi libri sullo sviluppo di Android: un libro di programmazione approfondito intitolato Sviluppo di applicazioni wireless Android (ora nella sua terza edizione come un set di due volumi), Sams ti insegna a sviluppare applicazioni Android in 24 ore, e Apprendimento della programmazione di applicazioni Android per Kindle Fire: una guida pratica per creare la tua prima applicazione Android. Quando non scrivono, passano il loro tempo a sviluppare software mobile presso la loro azienda ea fornire servizi di consulenza. Possono essere contattati via email a [email protected], tramite il loro blog su androidbook.blogspot.com e su Twitter @androidwireless.