it-swarm.it

Come posso connettermi ad Android con ADB su TCP?

Sto tentando di eseguire il debug di un'applicazione su un Motorola Droid , ma ho qualche difficoltà a connettermi al dispositivo tramite USB. Il mio server di sviluppo è un Windows 7 a 64 bit VM in esecuzione in Hyper-V , quindi non posso collegarmi direttamente via USB nel guest o dall'Host.

Ho installato un paio di diverse soluzioni USB-over-TCP, ma la connessione sembra avere problemi dal momento che il ADB monitor riporta ripetutamente "devicemonitor non è riuscito ad avviare il monitoraggio". C'è un modo per connettersi direttamente dal client sulla macchina di sviluppo al demone sul dispositivo usando la rete invece della connessione USB o possibilmente altre opzioni praticabili?

774
JDM

Processo manuale

Dal tuo dispositivo, se è rootato

Secondo un post su xda-developers , puoi abilitare ADB tramite Wi-Fi dal dispositivo con i comandi:

su
setprop service.adb.tcp.port 5555
stop adbd
start adbd

E puoi disabilitarlo e restituire ADB all'ascolto su USB con

setprop service.adb.tcp.port -1
stop adbd
start adbd

Da un computer, se si dispone già dell'accesso USB (non è richiesta la root)

È ancora più semplice passare all'uso del Wi-Fi, se disponi già di USB. Da una riga di comando sul computer che ha il dispositivo collegato tramite USB, emettere i comandi

adb tcpip 5555
adb connect 192.168.0.101:5555

Assicurati di sostituire 192.168.0.101 con l'indirizzo IP effettivamente assegnato al tuo dispositivo.

È possibile trovare l'indirizzo IP di un tablet in due modi:

Manual IP Discovery:

Accedi alle impostazioni WiFi di Android, fai clic sul pulsante del menu nella barra delle azioni (Ellips verticale), premi Avanzate e vedi l'indirizzo IP nella parte inferiore dello schermo.

Usa ADB per scoprire IP:

Esegui il seguente comando tramite adb:

adb Shell ip -f inet addr show wlan0

Per dire al demone ADB, tornare ad ascoltare tramite USB

adb usb

App per automatizzare il processo

Ci sono anche diverse app su Google Play che automatizzano questo processo. Una rapida ricerca suggerisce adbWireless , WiFi ADB e ADB WiFi . Tutti richiedono l'accesso root, ma adbWireless richiede meno autorizzazioni.

1079
Brian

Questo è veramente semplice se il tuo telefono è radicato.

Scarica un emulatore di terminale da Google Play (ci sono molti che sono gratuiti). Assicurati che il tuo dispositivo Android sia connesso al Wi-Fi e ottieni l'indirizzo IP Wi-Fi. Apri il programma del terminale e digita:

su
setprop service.adb.tcp.port 5555
stop adbd
start adbd

Ora vai sul tuo computer (supponendo che stai usando Windows) e crea un collegamento sul desktop per "cmd.exe" (senza le citazioni).

Fai clic destro sulla scorciatoia di cmd e scegli "Run as Administrator"

Passa alla tua cartella Android-sdk-windows\tools

Genere:

adb connect ***wifi.ip.address***:5555

(example: adb connect 192.168.0.105:5555)

adb dovrebbe ora dire che sei connesso.

Nota: se sei troppo veloce per dare il comando connect potrebbe non riuscire. Quindi prova almeno due volte cinque secondi prima di dire che questo non funziona.

124
norman
  1. Collega il dispositivo tramite USB e assicurati che il debug funzioni, quindi esegui:

    adb tcpip 5555
    adb connect <DEVICE_IP_ADDRESS>:5555
    
  2. Disconnetti USB e procedi con il debug wireless.

  3. Quando hai finito e vuoi tornare al debugging USB, esegui:

    adb -s <DEVICE_IP_ADDRESS>:5555
    

Per trovare l'indirizzo IP del dispositivo, accedere a Settings > Wi-Fi > Advanced > IP Address sul dispositivo o eseguire adb Shell netcfg.

Nessuna radice richiesta. È possibile eseguire il debug di un solo dispositivo alla volta.

Vedi questo post XDA .

Il comando adb si trova nella cartella platform-tools di Android SDK.

74
Ribin Haridas

Da adb --help:

connect <Host>:<port>         - Connect to a device via TCP/IP

A proposito, questa è un'opzione da linea di comando.

Dovresti provare a connettere il telefono al Wi-Fi, e quindi ottenere il suo indirizzo IP dal tuo router. Non funzionerà sulla rete cellulare.

La porta è 5554.

49
Nathan

Supponi di aver salvato il percorso adb nel percorso dell'ambiente di Windows

  1. Attiva la modalità di debug in Android

  2. Connetti al PC tramite USB

  3. Apri comando Tipo prompt: adb tcpip 5555

  4. Disconnetti il ​​tuo tablet o smartphone dal pc

  5. Apri il comando Tipo prompt: adb connect IPADDRESS (IPADDRESS è l'indirizzo DHCP/IP del tuo tablet o smartphone, che puoi trovare tramite Wi-Fi -> rete connessa corrente)

Ora nel prompt del comando dovresti vedere il risultato: connesso a xxx.xxx.xxx.xxx:5555

47
MapleLover

Per utenti PC:

Passo 1:
Devi abilitare le opzioni di sviluppo nel tuo telefono Android.
Puoi abilitare le opzioni dello sviluppatore in questo modo.
• Apri Impostazioni> Informazioni su> Informazioni software> Altro.
• Quindi tocca "Numero build" sette volte per abilitare le opzioni dello sviluppatore.
• Torna al menu Impostazioni e ora potrai vedere "Opzioni sviluppatore" lì. 
• Toccalo e attiva Debug USB dal menu nella schermata successiva.

Passo 2:

Apri cmd e digita adb.
Se si scopre che adb non è un comando valido, è necessario aggiungere un percorso alla variabile di ambiente.

• Per prima cosa vai alla cartella dell'SDK installato
Segui questo percorso e questo percorso è solo per un esempio . D:\software\Sviluppo\Andoird\SDK\sdk\platform-tools \; D:\software\Sviluppo\Andoird\SDK\SDK\tools;
• Ora cerca su impostazioni avanzate del sistema Windows

enter image description here

Apri la variabile di ambiente.

enter image description here

quindi apri il percorso e incolla il seguente percorso questo è un esempio.
Il tuo percorso SDK è diverso dal mio, per favore usa il tuo. D:\software\Sviluppo\Andoird\SDK\sdk\platform-tools \;
. .__ D:\software\Sviluppo\Andoird\SDK\SDK\tools;

enter image description here

Passaggio 3:

Apri cmd e digita adb. se continui a vedere che adb non è un comando valido, il tuo percorso non è stato impostato correttamente, segui i passaggi precedenti.

enter image description here

Ora puoi connettere il tuo telefono Android al PC.

Apri cmd e digita i dispositivi adb e puoi vedere il tuo dispositivo .Trova l'indirizzo IP del tuo telefono.

enter image description here

Digitare: - adb tcpip 5555

enter image description here

Ottieni l'indirizzo IP del tuo telefono

adb Shell netcfg

Adesso,

adb connect "IP address of your phone"

Ora esegui il tuo progetto Android e se non vedi il tuo dispositivo digita nuovamente adb connect IP address del tuo telefono

enter image description here

enter image description here

Per utenti Linux e MAC:

Passaggio 1: aprire il terminale e installare adb utilizzando 

Sudo apt-get install Android-tools-adb Android-tools-fastboot

Collegare il telefono tramite cavo USB a PC . Digitare il seguente comando nel terminale

adb tcpip 5555

Usando adb, collega il tuo indirizzo IP del telefono Android.

Rimuovi il tuo telefono.

39
Raghav Thakkar

Avevo bisogno di ottenere both USB e TCPIP lavorando per ADB (non chiedere), così ho fatto quanto segue (usando le indicazioni che altri hanno postato da xda-developers)

Utilizzando adb Shell:

su
#Set the port number for adbd
setprop service.adb.tcp.port 5555

#Run the adbd daemon *again* instead of doing stop/start, so there
#are two instances of adbd running.
adbd &

#Set the port back to USB, so the next time ADB is started it's
#on USB again.
setprop service.adb.tcp.port -1

exit
33
transistor1

Per connettere il tablet utilizzando la porta TCP. Assicurati che il tuo sistema e dispositivo siano connessi alla stessa rete.

  1. Console aperta cmd.exe
  2. Digita adb tcpip 5555
  3. Vai a Sistema -> Opzioni di sviluppo -> Debug USB -> Deseleziona per la connessione TCPIP
  4. Digita adb connect 192.168.1.2 questo è l'indirizzo IP del tuo dispositivo
  5. Connesso a 192.168.1.2

Collegato usando port forward Prova a fare port forwarding,

adb forward tcp: <PC port> tcp: <device port>

piace:

adb forward tcp: 5555 tcp: 5555.

C:\Users\abc> adb forward tcp: 7612 tcp: 7612

C:\Users\abc> adb tcpip 7612 riavvio in modalità TCP porta: 7612

C:\Users\abc> adb connect 10.0.0.1:7612

connesso a 10.0.0.1:7612

Se ricevi messaggi errore: dispositivo non trovato connetti un dispositivo USB al sistema, segui la stessa procedura.
per un dispositivo rooted 

setprop service.adb.tcp.port 5555
stop adbd
start adbd
32
rinkesh

Per prima cosa devi connettere il tuo dispositivo tramite USB

Quindi connetti il ​​tuo dispositivo a WIFI e ottieni l'indirizzo IP . Mentre sei ancora connesso via USB, digita questo in linea di comando o tramite Android Studio Terminal

adb tcpip 5555
adb connect <device IP>:5555

Vedrai questi messaggi:

restarting in TCP mode port: 5555
connected to 172.11.0.16:5555

Ora rimuovi il cavo USB e vedrai ancora la tua logcat come al solito

Fatto. Godere 

28
Joolah

Non so come collegare il dispositivo senza alcuna connessione USB, ma se riesci a connetterlo, magari su un altro computer, puoi passare l'adbd alla modalità TCP emettendo 

adb tcpip <port>

da un terminale e connettersi al dispositivo tramite Wi-Fi da qualsiasi PC in rete:

adb connect <ip>:<port>

Forse è anche possibile passare alla modalità TCP da un terminale sul dispositivo.

27
Christoph

Da un computer su un dispositivo non rootato

(Si noti che questo può essere fatto usando un dispositivo rooted, ma si può usare una Shell su un dispositivo rooted che non richiede una connessione USB)

In primo luogo, aprire il comando Prompt (CMD). Se utilizzi Android Studio o IntelliJ, puoi utilizzare una console inclusa.

Se possibile, apri la posizione dell'SDK, fai clic con il tasto destro e premi "start command Prompt here". Non tutti hanno questa opzione quindi devi fare anche questo (/ questi) comandi:

Cambia l'unità (se applicabile)

D: 

E accedere agli strumenti sdk e piattaforma. Sostituisci questo percorso con il tuo percorso SDK:

D:/sdk/path/here/platform-tools

Ora hai accesso al bridge di debug di Android.

Ora, con il dispositivo collegato al computer, fare:

adb tcpip <port> 
adb connect <ip>:<port>

Dov'è la porta a cui si desidera connettersi (l'impostazione predefinita è 5555) ed è l'IP del dispositivo a cui si desidera connettersi.

Nota: 5555 è la porta predefinita e solo la scrittura dell'indirizzo IP la connette. Se usi una porta personalizzata, puoi almeno migliorare la sicurezza. È possibile abusare del debug USB tramite Wi-Fi, ma solo se il dispositivo è collegato al computer che desidera abusare del dispositivo. L'utilizzo di una porta non predefinita almeno lo rende un po 'più difficile da connettere.

Se si utilizza una porta personalizzata, assicurarsi di aggiungerla dopo l'IP. Scrivendo nessuna porta si connette a 5555 e se non l'hai usata la connessione fallirà.

Puoi trovare l'indirizzo IP di un dispositivo in due modi:

  • A seconda del dispositivo, i nomi esatti possono variare. Apri le impostazioni e vai a Informazioni sul dispositivo -> Stato -> Indirizzo IP

  • Usa ADB per ottenere l'IP

Dalla console, eseguire:

adb Shell ip -f inet addr show wlan0

E una volta terminata la connessione, è possibile disconnettere il dispositivo dal computer eseguendo:

adb disconnect <ip>:<port>

O nessun IP per disconnettere tutti i dispositivi. Se hai usato una porta personalizzata, devi specificare quale porta disconnettere da . Anche qui il valore predefinito è 5555.

Per disabilitare la porta (se questo è qualcosa che si vuole fare) si fa questo comando con il dispositivo connesso:

adb usb

Oppure puoi riavviare il dispositivo per rimuovere la connessione tcpip

Da un computer su un dispositivo rooted

In primo luogo, è necessario accedere a Shell. Connetti il ​​dispositivo tramite un cavo USB e utilizza adb Shell o scarica un'app da Google Play, FDroid o un'altra fonte.

Quindi fai:

su
setprop service.adb.tcp.port <port>
stop adbd
start adbd

E per connettere il dispositivo, fai come nella versione non root facendo adb connect <ip>:<port>.

E se vuoi disabilitare la porta e tornare all'ascolto USB:

setprop service.adb.tcp.port -1
stop adbd
start adbd

Puoi anche utilizzare un plug-in Android Studio per farlo (non ricordo il nome adesso), e per gli utenti rooted c'è anche l'opzione di scaricare un'app per Android per impostare la connessione telefonica (probabilmente è ancora richiesto adb connect ).

Alcuni telefoni hanno un'impostazione nelle opzioni sviluppatore (questo vale per alcuni telefoni senza radici, anche se probabilmente anche alcuni telefoni con root) che consente di commutare ADB su wifi dal dispositivo stesso senza una connessione root o computer per avviarlo. Anche se ci sono pochi telefoni che lo hanno

26
Zoe

Se desideri collegare facilmente il tuo dispositivo per eseguire, eseguire il debug o distribuire le tue app Android tramite WiFi, puoi utilizzare un plug-in IntelliJ open source che ho sviluppato. Qui è il codice e qui il plugin pronto per essere utilizzato.

L'utilizzo è abbastanza semplice. Qui hai una gif:

 enter image description here

Come ha detto Brian:

Secondo un post su xda-developers, puoi abilitare ADB tramite WiFi dal dispositivo con i comandi

setprop service.adb.tcp.port 5555

smettere di adbd

inizia adbd

E puoi disabilitarlo e restituire ADB all'ascolto su USB con

setprop service.adb.tcp.port -1

smettere di adbd

inizia adbd

Se si dispone già dell'accesso USB, è ancora più semplice passare all'utilizzo del WiFi. Da una riga di comando sul computer che ha il dispositivo collegato tramite USB, emettere i comandi

adb tcpip 5555

adb connect 192.168.0.101:5555

Per dire al demone ADB, tornare ad ascoltare tramite USB

adb usb

Ci sono anche diverse app su Android Market che automatizzano questo processo.

Funziona. Devi solo accedere a Android Shell e digitare quei comandi ...

Un'altra soluzione (più semplice) è sul mercato: adbWireless, imposterà automaticamente il tuo telefono.

È richiesto il root! per entrambi...

11
offcourse
adb tcpip 5555

Strano, ma questo funziona solo per me se ho il cavo USB collegato, quindi posso scollegare l'USB e andare con esso con tutto il resto adb. 

e lo stesso quando si ritorna a USB,

adb usb

funzionerà solo se usb è collegato.

Non importa se rilascio il 

setprop service.adb.tcp.port 5555

setprop service.adb.tcp.port -1

quindi fermati e avvia adbd, ho ancora bisogno del cavo usb o non funziona.

Quindi, se il mio ADB su USB non funzionasse, scommetto che non sarei in grado di abilitare ADB tramite WiFi.

9
Chris

PASSO 1.

Assicurarsi tutti e due il tuo computer host adb e il dispositivo Android si trovano sulla stessa rete Wi-Fi .

PASSO 2.

Collegare il dispositivo Android al computer tramite il cavo USB. Non appena lo fai, il tuo computer Host rileva il tuo dispositivo e adb inizierà a funzionare in modalità USB sul computer. Puoi controllare i dispositivi collegati con adb devices considerando che adb è in esecuzione in modalità USB eseguendo adb usb.

$ adb usb
restarting in USB mode
$ adb devices
List of devices attached
ZX1D63HX9R  device


PASSAGGIO 3.

Riavvia adb in modalità tcpip con questo comando:

$ adb tcpip 5556
restarting in TCP mode port: 5556


PASSAGGIO 4.

Scopri l'indirizzo IP del dispositivo Android. Ci sono diversi modi per farlo:

  • MODO: 1 Vai a Impostazioni -> Informazioni su telefono/tablet -> Stato -> indirizzo IP.
  • MODO: 2 Vai all'elenco delle reti Wi-fi disponibili. Quello a cui sei connesso, tocca su quello e conosci il tuo IP.
  • MODO: 3 Prova $ adb Shell netcfg.

Ora che conosci l'indirizzo IP del tuo dispositivo, collega il tuo adb Host ad esso.

$ adb connect 192.168.0.102:5556
already connected to 192.168.0.102:5556
$ adb devices
List of devices attached
ZX1D63HX9R  device
192.168.0.102:5556  device


PASSO 5.

Rimuovi il cavo USB e dovresti essere connesso al tuo dispositivo. Se non lo vedi in adb devices, allora ricollegati usando il comando del passo precedente:

$ adb connect 192.168.0.102:5556
connected to 192.168.0.102:5556
$ adb devices
List of devices attached
192.168.0.102:5556  device

O sei a posto ora o dovrai uccidere il tuo server adb eseguendo adb kill-server e ripercorrerai tutti i passaggi ancora una volta.

Spero che sia d'aiuto!


Riferimento:

7
Eddy

Per passare da TCP a modalità USB con un solo comando, puoi aggiungerlo a /init.rc:

on property:service.adb.tcp.port=*
    restart adbd

on property:service.adb.tcp.enable=1
    setprop service.adb.tcp.port 5555

on property:service.adb.tcp.enable=0
    setprop service.adb.tcp.port -1

E ora puoi usare la proprietà service.adb.tcp.enable per abilitare o disabilitare l'ascolto sulla porta 5555. Esegui netstat per verificare se è in ascolto. Come puoi vedere, si innesca anche se desideri cambiare service.adb.tcp.port manualmente.

7
errordeveloper

È inoltre possibile utilizzare l'inoltro della porta locale SSH. Ma coinvolge ancora un cavo USB. Collegare il telefono tramite USB a un computer (host) con un sshd in esecuzione. Su un PC remoto (guest) avviare un client SSH in grado di portforwarding/tunneling. Esempio:

plink -L 5037:localhost:5037 <Host_IP_address>

Io uso questa costruzione per connettere il mio dispositivo a una macchina virtuale. Eltima USB to Ethernet non era abbastanza stabile (timeout durante il debug).

Il tunneling SSH funziona gratuitamente ed è più affidabile.

5
Ron

Trovo le altre risposte confuse. Molto più semplice da utilizzare adbWireless:

http://ppareit.github.com/AdbConnect/

Basta installare un'app sul telefono per attivare il debug su Wi-Fi, installare un plug-in Eclipse e il gioco è fatto.

4
user146043

Ho creato un file batch per l'abilitazione e il collegamento automatico di ADB via TCP a un dispositivo collegato tramite USB. Con esso non è necessario inserire l'IP manualmente.

@echo off
setlocal

REM Use a default env variable to find adb if possible
if NOT "%AndroidSDK%" == "" set PATH=%PATH%;%AndroidSDK%\platform-tools

REM If off is first parameter then we turn off the tcp connection.
if "%1%" == "off" goto off

REM Set vars
set port=%1
set int=%2
if "%port%" == "" set port=5557
if "%int%" == "" set int=wlan0

REM Enable TCP
adb -d wait-for-device tcpip %port%

REM Get IP Address from device
set shellCmd="ip addr show %int% | grep 'inet [0-9]{1,3}(\.[0-9]{1,3}){3}' -oE | grep '[0-9]{1,3}(\.[0-9]{1,3}){3}' -oE"
for /f %%i in ('adb wait-for-device Shell %shellCmd%') do set IP=%%i

REM Connect ADB to device
adb connect %IP%:%port%

goto end

:fail
echo adbWifi [port] [interface]
echo adbWifi off
goto end

:off
adb wait-for-device usb

:end
3
Felizk

Ecco un'estensione della risposta di Brian tramite Bluetooth:

  1. Su Linux, usa Blueman per condividere Internet via PC con il tuo dispositivo tramite Bluetooth:

    $ Sudo apt-get install blueman
    $ blueman-manager
    Pair them: Search devices after enabling Bluetooth
    on your phone and making it visible
    $ blueman-services
    Network > [X] Network Access Point (NAP)
    Your Phone > Settings > Bluetooth > Paired Device > [X] Internet access
    
  2. Utilizzare la rete Bluetooth per i comandi ADB:

    $ adb tcpip 5555
    $ adb connect $(adb Shell ip -f inet addr show bt-pan | egrep -o '[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+' | head -n1):5555
    

Una volta fatto per tornare alla modalità USB:

$ adb disconnect
$ adb usb

Nota: Bluetooth 3.0 e 4.0 possono arrivare fino a 24 Mbit/s .

3
Wernight

Passaggi:

  1. su - Per passare a super utente.
  2. setprop service.adb.tcp.port 5555 - Per specificare la porta tcp - 5555 è il numero di porta qui
  3. stop adbd - Per interrompere il servizio adbd.
  4. start adbd - Per avviare il servizio adbd.

questo funziona perfettamente con ssh dal mio PC Windows

Provo a farlo sullo stivale sul mio cyanogen mobile o lo lancio con il plink. Con plink non posso avviare Shell con su right ... Il comando sudo o su non funziona. Al boot non so come funziona! Il mio programma Shell funziona da ssh con su -c "sh /storage/sdcard1/start_adb.sh" con gli ultimi 3 comandi (senza su -)

Grazie

3
beguinner

Bash util function:

function adb-connect-to-wifi {
    ip="$(adb Shell ip route | awk '{print $9}')"
    port=5555
    adb tcpip ${port}
    adb connect ${ip}:${port}
}
3
eleven

Devi fare le seguenti cose:

  • Innanzitutto, aggiungi ADB al percorso dell'ambiente.
  • Dal tuo CLI digita questo comando adb connetti YOUR_DEVICE_IP: PORT_NUMBER (esempio adb connect 192.168.100.100:5555 )
2
noman404

Ho trovato un metodo conveniente che mi piacerebbe condividere.

Per Windows

Avere accesso USB una volta

Nessuna radice richiesta

Collega il telefono e il PC a un hotspot o esegui un hotspot portatile dal tuo telefono e collega il tuo PC ad esso.

Ottieni l'ip del tuo telefono come prescritto da brian (non serve se stai facendo hotspot dal tuo telefono)

adb Shell ip -f inet addr show wlan0

Apri il blocco note

Scrivi questi

@echo off
cd C:\Android\android-sdk\platform-tools
adb tcpip 5555
adb connect 192.168.43.1:5555

Cambia la posizione indicata sopra dove il tuo pc contiene il file abd.exe

Cambia l'ip sul tuo telefono ip. 

Nota : L'IP sopra riportato è l'IP di base di un dispositivo Android quando fa un hotspot. Se ti connetti a una rete Wi-Fi e se l'IP del tuo dispositivo continua a cambiare durante la connessione a un hotspot ogni volta, puoi renderlo statico configurando le impostazioni Wi-Fi. Google it.

Ora salva il file come ABD_Connect.bat (file batch MS-DOS).

Salvalo da qualche parte e fai riferimento a un collegamento sul desktop o sul pulsante Start.

Connettiti tramite USB una volta e prova a eseguire alcune applicazioni. Successivamente, ogni volta che si desidera connettersi in modalità wireless, fare doppio clic sul collegamento.

Nota : A volte è necessario aprire il collegamento ogni volta che si esegue il debug dell'applicazione. Quindi creare un tasto di scelta rapida per il collegamento sul desktop sarà più conveniente. Ho creato un tasto di scelta rapida come Ctrl+Alt+S. Quindi, ogni volta che desidero eseguire il debug, premo Shift+F9 e Ctrl+Alt+S

Nota : Se trovate device = null error on cmd window, controllate il vostro IP, potrebbe essere cambiato.

1
Sayka

Nel mio sistema è andata così:

Sul mio dispositivo Android nella mia shell Linux, un semplice "ifconfig" non mi dava il mio indirizzo IP. Dovevo digitare:

ifconfig eth0

-o-

netcfg

per ottenere il mio indirizzo IP. (Sapevo che eth0 era configurato perché l'ho visto nel mio dmesg.) Poi ho fatto il:

setprop service.adb.tcp.port -1

smettere di adbd

inizia adbd

Quindi sul mio box Win7 (quello che esegue Eclipse 3.7.1). Ho aperto un comando Chiedi di 

\ Android-sdk\platform-tools>

senza correre come amministratore. Poi ho fatto a

adb connect 12.345.678.90

Non ho mai messo una porta. Se ho fatto un 

adb tcpip 5555

ha detto che non è riuscito a trovare il dispositivo, quindi non è apparso nulla nella mia lista "dispositivi adb". Cioè funziona solo se NON faccio il comando tcpip sopra. 

Posso fare un "adb Shell" e pasticciare con il mio dispositivo Android. Ma il mio dispositivo Android non compare nella mia scheda Esegui -> Esegui configurazioni -> Target adesso. D'altra parte, se tengo la scheda Target impostata su automatico. Quindi, quando eseguo la mia app tramite Esegui -> Esegui, viene eseguito sul mio dispositivo Android anche se il mio dispositivo Android non è nemmeno elencato tra i miei obiettivi.

1
Joe C

Ho appena seguito i seguenti passaggi e ha iniziato a funzionare, così posso connettermi al mio dispositivo Android.

Passo 1: Apri la finestra del terminale in Dispositivi Android ed esegui il seguente comando.

  1. su - Per passare a super utente.
  2. setprop service.adb.tcp.port 5555 - Per specificare la porta tcp - 5555 è il numero della porta qui
  3. stop adbd - Per interrompere il servizio ad adeb.
  4. avvia adbd - per avviare il servizio adbd.

Passaggio 2: tramite ADB, eseguire il comando muggito. (Dal percorso in cui è configurato ADB)

adb connect 10.10.10.50:5555 - Qui 10.10.10.50 è l'indirizzo IP del dispositivo Android e 5555 è il numero di porta.

1
Avinash M

L'ho fatto funzionare. Non ho usato alcun cavo USB.

  • app adb wireless. 
  • Eseguirlo. Ciò imposterà ip e port; Quindi in dos

    cd C:\Program Files\Android\android-sdk\platform-tools adb connect "192.168.2.22:8000 "enter"
    

Collegato.

1
lee

Una nota aggiuntiva (appresa nel modo più duro): non si dovrebbe avere la connessione VPN aziendale attiva allo stesso tempo ... 

1
TuomasG

Utilizzare l'app adbwireless per abilitare il telefono, quindi utilizzare adb connect dal computer Windows per parlare con esso. L'app adbwireless al telefono ti spiega come collegarti ad esso, fornendo l'indirizzo IP e tutto il resto.

L'alternativa meno divertente è quella di connettersi via USB, dire al telefono di usare TCPIP tramite adb tcpip 5555, quindi disconnettere USB, quindi utilizzare adb connect. Questo è molto più difficile perché in questo modo devi capire da solo l'indirizzo IP del telefono (adbwireless ti dice l'IP), devi connetterti via USB, e devi eseguire adb tcpip (anche adbwireless si prende cura di questo).

Quindi: installa adbwireless sul tuo telefono. Usalo. È possibile, lo faccio regolarmente su Linux e su Windows.

1
ConcernedParty

Se vuoi essere in grado di farlo con un clic del mouse, allora:

  1. In Android Studio -> Impostazioni/Preferenze -> Plugin -> Sfoglia i repository
  2. Cerca 'ADB wifi'
  3. Installa e riavvia Android Studio
  4. Collega il tuo dispositivo (con Debug USB abilitato) al tuo computer con USB (dovrai farlo solo una volta per sessione)
  5. Strumenti -> Android -> ADB WIFI -> ADB USB TO WIFI (Oppure usa la combinazione di tasti menzionata. Per MacOS: ctrl + shift + w)

Nota: se non ha funzionato:

  1. Il firewall del router Wi-Fi potrebbe bloccare la connessione.
  2. ABD potrebbe non essere installato sul tuo computer.
0
Abdul Wasae

adb può comunicare con adb server su socket tcp . è possibile verificarlo tramite telnet.

$ telnet 127.0.0.1 5037
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
000chost:version
OKAY00040020

generalmente, il comando ha il formato %04x%s with <message.length><msg> il seguente è il comando Ruby che manda il comando adb cmd contro il socket tcp socket

def send_to_adb(socket, cmd)
  socket.printf("%04x%s", cmd.length, cmd)
end

il primo esempio invia il comando Host:version che ha una lunghezza di 12 (000c in hex) . puoi usare comandi più entusiasmanti come framebuffer: che cattura gli screenshot dal framebuffer come puoi intuire dal suo nome.

0
9re