mozilla

Installazione e uso di ADB

Questa traduzione è incompleta. Collabora alla traduzione di questo articolo dall’originale in lingua inglese.

Molti aspetti dello sviluppo del SO Firefox richiedono l'installazione di ADB, l'Android Debug Bridge. Questo articolo spiega come fare, e condivide alcuni comandi ADB comuni utili.

Installazione di ADB

Puoi scaricare ed installare adb come parte del pacchetto Android SDK, per Mac, Linux o Windows — visita la pagina Ottenere l'Android SDK.

Le distribuzioni Linux più nuove hanno adb già nei loro repositories. Per Ubuntu 12.10 e successivi, esegui il seguente comando:

sudo apt-get install android-tools-adb

O per Fedora 18/19:

sudo yum install android-tools

O su OSX tramite Homebrew:

brew install android-platform-tools

Se la tua distribuzione non dispone di pacchetti per adb (es. Ubuntu 12.04 o Fedora 17), sarà necessario installare il pacchetto Android SDK per la tua piattaforma (avrai bisogno dell'ADT Bundle, non dell'opzione SDK Tools Only). Esegui quindi il loro gestore di pacchetti, $SDK_HOME/tools/android, e usa la GUI per installare "Android SDK Platform-tools".

Scopri dove adb viene installato (di solito in usr/bin, eventualmente anche dentro adt/platform-tools, a seconda di come lo hai installato). Assicurati di aggiungere questa cartella alla tua PATH. Questo può esser fatto aggiungendo la riga

PATH=$SDK_HOME:$PATH

sostituendo $SDK_HOME con il percorso dell'Android SDK, al tuo file ~/.bashrc o equivalente.

Risoluzione dei problemi

Se stai installando la versione 64-bit, e ottieni un errore "File non trovato" quando esegui 'adb' anche se il file è presente, è necessario installare le librerie di compatibilità a 32-bit. Per fare questo con apt:

sudo apt-get install ia32-libs

Comandi ADB comuni

Le sezioni seguenti spiegano alcuni comandi adb comuni, utili.

Riavvio del processo b2g

b2g è l'equivalente di un'applicazione XULRunner in esecuzione sul telefono in cima ad un kernel basato su Android. A volte potresti volerlo riavviare; questo è un modo per ripristinare l'ambiente applicativo senza riavviare l'intero dispositivo. E' possibile effettuarlo inserendo quanto segue nel tuo terminale mentre il tuo dispositivo è connesso al tuo computer (o durante l'esecuzione del debugger):

adb shell killall b2g

Abilitazione port forwarding per il debug

Per abilitare semplicemente il port forwarding (trasferimento dati tramite una specifica porta; per esempio se stai usando il Gestore di Applicazioni per il debug di applicazioni su un dispositivo Firefox OS), immetti il seguente comando nel tuo terminale:

adb forward tcp:6000 localfilesystem:/data/local/debugger-socket

Avrete bisogno di fare questo ogni volta che il telefono viene riavviato o scollegato e poi ri-collegato. È possibile modificare il numero di socket, se necessario.

Forwarding delle porte a una macchina locale

Per il forwarding delle porte a un computer locale, è necessario scaricare i binari netcat e ssh, ed eseguire i seguenti comandi:

# questo è un trucco enorme, ma di fatto funziona...
host$ adb forward tcp:7979 tcp:6969

# crea qualche named pipe in modo da fare un netcat bidirezionale
phone$ mknod readback p
host$ mknod readback p

# questo stabilisce una connessione all'host usata una volta sola
# ascolto sulle porte 6969 e 5959 e inoltro di tutte le informazioni tra loro
phone$ ./netcat -l -p 6969 < readback | ./netcat -l -p 5959 > readback
# connessione alla porta 7979 (porta 6969 sul dispositivo) e il server ssh locale e inoltro di tutte le informazioni tra loro 
host$ ./netcat localhost 7979 < readback | ./netcat localhost 22 > readback

# ora, quando ci colleghiamo alla porta 5959 sul telefono, sarà come connettersi al server ssh sull'host 

# uso inverso di netcat per impostare una connessione ssh all'host e inoltro della porta 9999 sul dispositivo verso il 'localhost:8000' (questo potrebbe essere qualsiasi cosa come 'google.com:80')
phone$ ./ssh localhost -p 5959 -L 9999:localhost:8000

Questo inoltrerà la porta 9999 sul dispositivo verso la porta 8000 dell'host.

Alternativamente, puoi usare un server ssh (dropbear e host_key) direttamente sul dispositivo, usando i comandi seguenti:

phone$ DROPBEAR_PASSWORD=root ./dropbear -p 9000 -F -v -a -r host_key ./dropbear
host$ adb forward tcp:8888 tcp:9000
# l'autenticazione con chiave pubblica è stata hard-coded per avere successo (assicuratevi di avere una chiave pubblica per ssh da usare)
host$ ssh -vvv root@localhost -p 8888 -R 9999:people.mozilla.org:80

Ulteriori risorse:

Etichette del documento e nomi di chi ha collaborato alla sua stesura

Contributors to this page: ChemBioScripting
Ultima modifica di: ChemBioScripting,
Nascondi barra laterale