usar devices descargar debug como android networking tcp debugging adb

devices - ¿Cómo puedo conectarme a Android con ADB sobre TCP?



como usar adb (30)

Desde una computadora en un dispositivo no rooteado

(Tenga en cuenta que esto también se puede hacer usando un dispositivo rooteado, pero puede usar un shell en un dispositivo rooteado que no requiere una conexión USB)

En primer lugar, abrir el símbolo del sistema (CMD). Si usa Android Studio o IntelliJ, hay una consola incluida que puede usar.

Si es posible, abra la ubicación del SDK, haga clic con el botón derecho y presione "iniciar el símbolo del sistema aquí". No todos tienen esta opción, así que tienes que hacer estos (/ estos) comandos también:

Cambiar la unidad (si corresponde)

D:

Y accede a las herramientas sdk y plataforma. Reemplace esta ruta con su ubicación SDK:

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

Ahora tienes acceso al puente de depuración de Android.

Ahora, con el dispositivo conectado a la computadora, haz:

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

¿Dónde está el puerto al que desea conectarse (el valor predeterminado es 5555 ) y es la IP del dispositivo al que desea conectarse?

Tenga en cuenta que 5555 es el puerto predeterminado y solo escribir la dirección IP lo conecta. Si usa un puerto personalizado, al menos puede mejorar un poco la seguridad. Se puede abusar de la depuración USB a través de wifi, pero solo si el dispositivo está conectado a la computadora que desea abusar del dispositivo. El uso de un puerto no predeterminado al menos dificulta un poco la conexión.

Si usa un puerto personalizado, asegúrese de agregarlo después de la IP. La escritura de ningún puerto se conecta al 5555 y si no lo usaste, la conexión fallará.

Puede encontrar la dirección IP de un dispositivo de dos maneras:

  • Dependiendo de su dispositivo, los nombres exactos pueden variar. Abra la configuración y vaya a Acerca del dispositivo -> Estado -> Dirección IP

  • Usa ADB para obtener la IP

Desde la consola, haz:

adb shell ip -f inet addr show wlan0

Y una vez que haya terminado con la conexión, puede desconectar el dispositivo de su computadora haciendo lo siguiente:

adb disconnect <ip>:<port>

O no IP para desconectar todos los dispositivos. Si usó un puerto personalizado, debe especificar de qué puerto se va a desconectar . El valor predeterminado es 5555 aquí también.

Para deshabilitar el puerto (si eso es algo que quieres hacer), haz este comando con el dispositivo conectado:

adb usb

O puede reiniciar el dispositivo para eliminar la conexión tcpip

Desde una computadora en un dispositivo rooteado

En primer lugar, necesita acceso al shell. Puede conectar el dispositivo con un cable USB y usar adb shell o descargar una aplicación de Google Play, FDroid o alguna otra fuente.

Entonces tu haces

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

Y para conectar el dispositivo, haga como en la versión no adb connect <ip>:<port> haciendo adb connect <ip>:<port> .

Y si desea deshabilitar el puerto y volver a escuchar USB:

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

También puede usar un complemento de Android Studio para que lo haga por usted (no recuerde el nombre en este momento), y para los usuarios rooteados también existe la opción de descargar una aplicación de Android para configurar la conexión telefónica (es probable que aún se requiera la conexión adb) ).

Algunos teléfonos tienen una configuración en las opciones de desarrollador (esto se aplica a algunos teléfonos no rooteados, aunque probablemente también a algunos teléfonos rooteados) que permite alternar ADB a través de wifi desde el propio dispositivo sin root o una conexión de computadora para iniciarlo. Aunque hay pocos teléfonos que tienen eso

Estoy intentando depurar una aplicación en un Motorola Droid , pero tengo algunas dificultades para conectarme al dispositivo a través de USB. Mi servidor de desarrollo es una máquina virtual de Windows 7 de 64 bits que se ejecuta en Hyper-V , por lo que no puedo conectarme directamente mediante USB en el huésped o desde el host.

Instalé un par de soluciones diferentes de USB sobre TCP, pero la conexión parece tener problemas ya que el monitor ADB informa que "devicemonitor no pudo iniciar la supervisión" repetidamente. ¿Hay alguna forma de conectarse directamente desde el cliente en la máquina de desarrollo al demonio en el dispositivo usando la red en lugar de la conexión USB u posiblemente otra opción viable?


PASO 1.

Asegúrese de que tanto su computadora host como su dispositivo Android estén en la misma red wifi.

PASO 2.

Conecte el dispositivo Android con la computadora usando su cable USB. Tan pronto como lo hagas, tu computadora host detectará tu dispositivo y adb comenzará a ejecutarse en el modo USB de la computadora. Puede verificar los dispositivos conectados con dispositivos adb devices mientras que asegúrese de que adb se ejecuta en el modo USB ejecutando adb usb .

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


PASO 3.

Reinicie adb en modo tcpip con este comando:

$ adb tcpip 5556 restarting in TCP mode port: 5556


ETAPA 4.

Averigüe la dirección IP del dispositivo Android. Hay varias maneras de hacer eso:

  • MANERA: 1 Vaya a Configuración -> Acerca del teléfono / tableta -> Estado -> Dirección IP.
  • MANERA: 2 Vaya a la lista de redes wifi disponibles. El que está conectado, toque eso y conozca su IP.
  • MANERA: 3 Prueba $ adb shell netcfg .

Ahora que conoce la dirección IP de su dispositivo, conecte su host adb a él.

$ 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


PASO 5.

Quita el cable USB y deberías estar conectado a tu dispositivo. Si no lo ve en adb devices simplemente vuelva a conectarse con el comando del paso anterior:

$ 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

Ya sea que esté listo para ir ahora o tendrá que matar su servidor de adb kill-server ejecutando adb kill-server y seguir todos los pasos una vez más.

¡Espero que ayude!


Referencia:


Proceso manual

Desde su dispositivo, si está rooteado.

De acuerdo con una publicación en xda-developers , puede habilitar ADB a través de Wi-Fi desde el dispositivo con los comandos:

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

Y puede deshabilitarlo y volver a ADB a escuchar en USB con

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

Desde una computadora, si ya tiene acceso USB (no se requiere root)

Es incluso más fácil cambiar a usar Wi-Fi, si ya tiene USB. Desde una línea de comandos en la computadora que tiene el dispositivo conectado a través de USB, ejecute los comandos

adb tcpip 5555 adb connect 192.168.0.101:5555

Asegúrese de reemplazar 192.168.0.101 con la dirección IP que realmente está asignada a su dispositivo.

Puede encontrar la dirección IP de una tableta de dos maneras:

Descubrimiento manual de IP:

Vaya a la configuración WiFi de Android, haga clic en el botón de menú en la barra de acción (los puntos suspensivos verticales), presione Avanzado y vea la dirección IP en la parte inferior de la pantalla.

Utilice ADB para descubrir IP:

Ejecute el siguiente comando a través de adb:

adb shell ip -f inet addr show wlan0

Para decirle al demonio ADB volver a escuchar por USB

adb usb

Aplicaciones para automatizar el proceso.

También hay varias aplicaciones en Google Play que automatizan este proceso. Una búsqueda rápida sugiere adbWireless , WiFi ADB y ADB WiFi . Todos estos requieren acceso de root, pero adbWireless requiere menos permisos.


  1. Conecte el dispositivo a través de USB y asegúrese de que la depuración está funcionando, luego ejecute:

    adb tcpip 5555 adb connect <DEVICE_IP_ADDRESS>:5555

  2. Desconecte el USB y proceda con la depuración inalámbrica.

  3. Cuando haya terminado y desee volver a la depuración USB, ejecute:

    adb -s <DEVICE_IP_ADDRESS>:5555

Para encontrar la dirección IP de su dispositivo, vaya a Settings > Wi-Fi > Advanced > IP Address en su dispositivo o ejecute adb shell netcfg .

No se requiere raíz. Solo se puede depurar un dispositivo a la vez.

Ver este post de XDA .

El comando adb se encuentra en la carpeta de platform-tools del SDK de Android.


Aquí hay una extensión de la respuesta de Brian usando Bluetooth:

  1. En Linux, use Blueman para compartir Internet de la PC con su dispositivo a través de 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. Utilice la red Bluetooth para comandos 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 vez hecho esto para volver al modo USB:

$ adb disconnect $ adb usb

Nota: Bluetooth 3.0 y 4.0 pueden alcanzar hasta 24 Mbit / s .


Como dijo Brian:

De acuerdo con una publicación en xda-developers, puede habilitar ADB a través de WiFi desde el dispositivo con los comandos

setprop service.adb.tcp.port 5555

deja de adbd

comience adbd

Y puede deshabilitarlo y volver a ADB a escuchar en USB con

setprop service.adb.tcp.port -1

deja de adbd

comience adbd

Si ya tiene acceso a USB, es aún más fácil cambiar a WiFi. Desde una línea de comandos en la computadora que tiene el dispositivo conectado a través de USB, ejecute los comandos

adb tcpip 5555

adb connect 192.168.0.101:5555

Para decirle al demonio ADB volver a escuchar por USB

adb usb

También hay varias aplicaciones en el Android Market que automatizan este proceso.

Funciona. Solo necesitas acceder a la shell de Android y escribir esos comandos ...

Otra solución (más fácil) está en el mercado: adbWireless, configurará automáticamente su teléfono.

Se requiere la raíz! para ambos...


Conseguí este trabajo. No usé ningún cable usb.

  • app adb wireless.
  • Ejecutarlo. Eso establecerá ip y puerto; Entonces en dos

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

Conectado.


Desde adb --help :

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

Esa es una opción de línea de comandos por cierto.

Debe intentar conectar el teléfono a su Wi-Fi y luego obtener su dirección IP de su enrutador. No va a funcionar en la red celular.

El puerto es 5554.


En mi sistema fue así:

En mi dispositivo Android en mi shell de Linux, un simple "ifconfig" no me dio mi dirección IP. Tuve que escribir:

ifconfig eth0

-o-

netcfg

para obtener mi dirección IP. (Sabía que eth0 estaba configurado porque lo vi en mi dmesg). Luego hice lo siguiente:

setprop service.adb.tcp.port -1

deja de adbd

comience adbd

Luego en mi caja de Win7 (la que ejecuta Eclipse 3.7.1). Abrí un indicador de comando para

/ android-sdk / platform-tools>

sin ejecutar como admin. Entonces hice un

adb connect 12.345.678.90

Nunca pongo un puerto. Si yo hiciera un

adb tcpip 5555

dijo que no podía encontrar el dispositivo, entonces no apareció nada en mi lista de "dispositivos adb". Es decir, solo funciona si NO hago el comando tcpip de arriba.

Puedo hacer un "shell adb" y desordenar mi dispositivo Android. Pero mi dispositivo Android no aparece en mi pestaña Run-> Run Configurations-> Target ahora. Por otro lado, si mantengo la pestaña Destino configurada en automático. Luego, cuando ejecuto mi aplicación a través de Ejecutar-> Ejecutar, se ejecuta en mi dispositivo Android a pesar de que mi dispositivo Android ni siquiera aparece como uno de mis objetivos.


Encuentro las otras respuestas confusas. Mucho más fácil de usar adbWireless:

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

Simplemente instale una aplicación en su teléfono para alternar la depuración a través de wifi, instale un plugin de eclipse y listo.


Esto es realmente simple si su teléfono está rooteado.

Descargue un emulador de terminal desde Google Play (hay muchos que son gratuitos). Asegúrese de que su dispositivo Android esté conectado a su Wi-Fi y obtenga la dirección IP de Wi-Fi . Abra el programa de terminal y escriba:

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

Ahora vaya a su computadora (asumiendo que está usando Windows) y cree un acceso directo en el escritorio para "cmd.exe" (sin las comillas).

Haga clic derecho en el acceso directo de cmd y elija "Run as Administrator"

Cambia a tu carpeta de android-sdk-windows/tools

Tipo:

adb connect ***wifi.ip.address***:5555 (example: adb connect 192.168.0.105:5555)

adb debería decir ahora que estás conectado.

Nota: si eres demasiado rápido para dar el comando de conexión, puede fallar. Así que intente al menos dos veces cinco segundos de diferencia antes de decir que esto no funciona.


Función util de Bash:

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


He encontrado un método conveniente que me gustaría compartir.

Para ventanas

Tener acceso USB una vez

No se requiere raíz

Conecte su teléfono y computadora a un punto de acceso o ejecute un punto de acceso portátil desde su teléfono y conéctelo a su computadora.

Obtenga la dirección IP de su teléfono según lo prescrito por Brian (No la necesitará si está haciendo un punto de acceso desde su teléfono)

adb shell ip -f inet addr show wlan0

Bloc de notas abierto

Escribe esto

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

Cambie la ubicación indicada anteriormente donde su PC contiene el archivo abd.exe

Cambia la ip a la ip de tu teléfono.

Nota : la IP que se indica arriba es la IP básica de un dispositivo Android cuando hace un punto de acceso. Si se está conectando a una red wifi y si la IP de su dispositivo sigue cambiando mientras se conecta a un punto de acceso en todo momento, puede hacerlo estático configurándolo dentro de la configuración de wifi. Buscalo en Google.

Ahora guarde el archivo como ABD_Connect.bat (archivo por lotes de MS-DOS).

Guárdelo en algún lugar y remita un acceso directo al Escritorio o al botón de Inicio.

Conéctate a través de USB una vez e intenta ejecutar alguna aplicación. Después de eso, siempre que desee conectarse de forma inalámbrica, haga doble clic en el acceso directo.

Nota : a veces es necesario abrir el acceso directo cada vez que depura la aplicación. Así que hacer una tecla de acceso directo para el acceso directo en el escritorio será más conveniente. He hecho una tecla de acceso directo como Ctrl+Alt+S Entonces, cuando quiera depurar, presiono Shift+F9 y Ctrl+Alt+S

Nota : si encuentra device = null error en la ventana de cmd, verifique su IP, podría haber cambiado.


Necesitaba que tanto USB como TCPIP funcionaran para ADB (no preguntes), así que hice lo siguiente (siguiendo las instrucciones que otros han publicado de xda-developers)

Utilizando 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


Necesitas hacer las siguientes cosas:

  • Primero, agregue ADB a su ruta de entorno.
  • Desde su CLI escriba este comando adb connect YOUR_DEVICE_IP: PORT_NUMBER (ejemplo adb connect 192.168.100.100:5555 )

No sé cómo conectar el dispositivo sin ninguna conexión USB, pero si logra conectarlo quizás en otra computadora puede cambiar el adbd al modo TCP emitiendo

adb tcpip <port>

desde una terminal y conéctese a su dispositivo a través de wifi desde cualquier PC en la red mediante:

adb connect <ip>:<port>

Quizás también sea posible cambiar al modo TCP desde un terminal en el dispositivo.


Para cambiar entre los modos TCP y USB con un solo comando, puede agregar esto 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

Y ahora puede usar la propiedad service.adb.tcp.enable para habilitar o deshabilitar la escucha en el puerto 5555. Ejecute netstat para verificar si está escuchando. Como puede ver, también se activará si desea cambiar service.adb.tcp.port manualmente.


Para conectar su tableta mediante puerto TCP. Asegúrese de que su sistema y dispositivo estén conectados a la misma red.

  1. Abra la consola cmd.exe
  2. Escriba adb tcpip 5555
  3. Vaya a Sistema -> Opción de desarrollo -> Depuración de USB -> Desmarque para la conexión TCPIP
  4. Escriba adb connect 192.168.1.2 esta es la dirección IP de su dispositivo
  5. Conectado a 192.168.1.2

Conectado mediante el reenvío de puertos Intente hacer el reenvío de puertos,

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

me gusta:

adb forward tcp: 5555 tcp: 5555.

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

C: / Users / abc> adb tcpip 7612 reiniciando en el modo TCP puerto: 7612

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

conectado a 10.0.0.1:7612

Si recibe un mensaje de error: no se encontró el dispositivo, conecte un dispositivo USB al sistema y luego siga el mismo procedimiento.
para un dispositivo rooteado

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


Primero debes conectar tu dispositivo a través de USB

Luego conecta tu dispositivo a WIFI y obtén la dirección IP. Mientras aún se conecta a través de usb, escriba esto en la línea de comandos o a través de Android Studio Terminal

adb tcpip 5555 adb connect <device IP>:5555

Verás estos mensajes:

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

Ahora retire el cable USB y seguirá viendo su logcat como de costumbre.

Hecho. Disfrutar


Reuní un archivo por lotes para habilitar y conectar automáticamente ADB a través de TCP, a un dispositivo conectado a través de USB. Con él no tienes que poner la 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


Si desea conectar fácilmente su dispositivo para ejecutar, depurar o implementar sus aplicaciones de Android a través de WiFi, puede utilizar un complemento de IntelliJ de código abierto que he desarrollado. Here está el código y here el plugin listo para ser utilizado.

El uso es bastante simple. Aquí tienes un gif:


Simplemente seguí los siguientes pasos y comenzó a funcionar, para poder conectarme a mi dispositivo Android.

Paso 1: Abra la ventana del terminal en dispositivos Android y ejecute el siguiente comando.

  1. su - Para cambiar a superusuario.
  2. setprop service.adb.tcp.port 5555 - Para especificar el puerto tcp - 5555 es el número de puerto aquí
  3. stop adbd - Para detener el servicio adbb.
  4. start adbd - Para iniciar el servicio adbd.

Paso 2: a través de ADB, ejecute el siguiente comando (desde la ruta donde está configurado ADB)

adb connect 10.10.10.50:5555 - Aquí 10.10.10.50 es la dirección IP del dispositivo Android y 5555 es el número de puerto.


Supongamos que guardó la ruta adb en la ruta del entorno de Windows

  1. Activar el modo de depuración en Android

  2. Conectar a la PC a través de USB

  3. Abra el indicador de comando escriba: adb tcpip 5555

  4. Desconecta tu tableta o teléfono inteligente de la PC

  5. Tipo de indicador de comando abierto: adb connect IPADDRESS (IPADDRESS es la dirección DHCP / IP de su tableta o teléfono inteligente, que puede encontrar por Wi-Fi -> red conectada actual)

Ahora en el símbolo del sistema, debería ver el resultado como: conectado a xxx.xxx.xxx.xxx:5555


También puede utilizar el reenvío de puerto local SSH. Pero todavía se trata de un cable USB. Conecte su teléfono mediante USB a una computadora (host) con un sshd en ejecución. En una PC remota (invitada), inicie un cliente SSH capaz de reenviar / hacer túneles. Ejemplo:

plink -L 5037:localhost:5037 <host_IP_address>

Yo uso esta construcción para conectar mi dispositivo a una máquina virtual. Eltima USB a Ethernet no fue lo suficientemente estable (tiempos de espera durante la depuración).

Túneles SSH funciona de forma gratuita y es más confiable.


Una nota adicional (aprendida de manera difícil): no debe tener la conexión VPN de su empresa activa al mismo tiempo ...


Use la aplicación adbwireless para habilitar el teléfono, luego use adb connect desde la máquina de Windows para hablar con él. La aplicación adbwireless en el teléfono le dice cómo conectarse a ella, le da la dirección IP y todo.

La alternativa mucho menos divertida es conectarse a través de USB, decirle al teléfono que use TCPIP a través de adb tcpip 5555, luego desconectar el USB y luego usar adb connect. Esto es mucho más difícil porque de esta manera usted tiene que averiguar la dirección IP del teléfono (adbwireless le informa la IP), debe conectarse a través de USB y ejecutar adb tcpip (adbwireless se encarga de eso también).

Entonces: instale adbwireless en su teléfono. Utilízalo Es posible, lo hago rutinariamente en Linux y en Windows.


Para usuarios de PC:

Paso 1:
Tienes que habilitar las opciones de desarrollador en tu teléfono Android.
Puede habilitar las opciones de desarrollador de esta manera.
• Abra Configuración> Acerca de> Información de software> Más.
• Luego toque "Número de compilación" siete veces para habilitar las opciones de desarrollador.
• Regrese al menú Configuración y ahora podrá ver las "Opciones de desarrollador" allí.
• Tóquelo y active la depuración USB en el menú de la siguiente pantalla.

Paso 2:

Abre cmd y escribe adb.
Si encuentra que adb no es un comando válido, debe agregar una ruta a la variable de entorno.

• Primero ve a tu carpeta de SDK instalada
Sigue este camino y este camino es solo un ejemplo. D: / softwares / Development / Andoird / SDK / sdk / platform-tools /; D: / softwares / Development / Andoird / SDK / sdk / tools;
• Ahora busque en la configuración avanzada del sistema de Windows

Abra la variable de entorno.

luego abra la ruta y pegue la siguiente ruta, este es un ejemplo.
Su ruta de SDK es diferente a la mía, por favor use la suya. D: / softwares / Development / Andoird / SDK / sdk / platform-tools /;
D: / softwares / Development / Andoird / SDK / sdk / tools;

Paso 3:

Abre cmd y escribe adb. Si aún ve que adb no es un comando válido, entonces su ruta no se ha configurado correctamente, siga los pasos anteriores.

Ahora puedes conectar tu teléfono android a PC.

Abra cmd y escriba adb devices y podrá ver su dispositivo. Encuentra tu dirección IP del teléfono.

Tipo: - adb tcpip 5555

Obtenga la dirección IP de su teléfono

adb shell netcfg

Ahora,

adb connect "IP address of your phone"

Ahora ejecute su proyecto de Android y si no ve su dispositivo, escriba nuevamente la dirección IP de su teléfono.

Para usuarios de Linux y MAC :

Paso 1: abrir el terminal e instalar adb usando

sudo apt-get install android-tools-adb android-tools-fastboot

Conecte su teléfono a través de un cable USB a la PC. Escriba el siguiente comando en la terminal

adb tcpip 5555

Usando adb, conecta la dirección IP de tu teléfono Android.

Quita tu teléfono.


Pasos

  1. su - Para cambiar a superusuario.
  2. setprop service.adb.tcp.port 5555 - Para especificar el puerto tcp - 5555 es el número de puerto aquí
  3. stop adbd - Para detener el servicio adbd.
  4. start adbd - Para iniciar el servicio adbd.

esto funciona perfectamente con ssh desde mi PC con Windows

Intento hacer esto en el arranque de mi móvil cianógeno o lo lanzo con plink. Con plink no puedo iniciar shell con su derecho ... sudo o su comando no funciona. En el arranque no sé cómo funciona! Mi programa shell funciona desde ssh con su -c "sh /storage/sdcard1/start_adb.sh" con los últimos 3 comandos (sin su -)

Gracias


adb puede comunicarse con el servidor de adb a través de socket TCP. Puedes verificar esto por telnet.

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

en general, el comando tiene el formato que se %04x%s with <message.length><msg>muestra a continuación, el comando ruby ​​que envía el comando adb cmdcontra el socket tcpsocket

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

el primer ejemplo envía el comando host:versioncuya longitud es 12 ( 000cen hexadecimal). puedes disfrutar de un comando más emocionante, como el framebuffer:que toma la captura de pantalla del framebuffer, como puedes adivinar por su nombre.


adb tcpip 5555

Raro, pero esto solo funciona para mí si tengo el cable USB conectado, luego puedo desconectar el usb e ir a por él con todo lo demás.

y lo mismo al volver al usb,

adb usb

Sólo funcionará si usb está conectado.

No importa si emito el

setprop service.adb.tcp.port 5555

o

setprop service.adb.tcp.port -1

luego, detenga y comience adbd, todavía necesito el cable usb o no funciona.

Entonces, si mi ADB sobre usb no funcionaba, apuesto a que tampoco sería capaz de habilitar ADB a través de WiFi.