Ejecutar / instalar / depurar aplicaciones de Android a través de Wi-Fi?


Pensé que había una forma de probar tus aplicaciones en desarrollo a través de Wi-Fi. Es esto exacto?

Me encantaría poder desatar mi teléfono y desarrollarme de forma inalámbrica.


Answers



Ver publicación en el foro ¿ Alguna forma de ver la pantalla de Android de forma remota sin root? - Publicación # 9 .

  1. Conecte el dispositivo a través de USB y asegúrese de que la depuración esté funcionando.
  2. adb tcpip 5555
  3. encuentre la dirección IP con adb shell netcfg o adb shell ifconfig con 6.0 y superior
  4. adb connect <DEVICE_IP_ADDRESS>:5555
  5. Desconecte el USB y proceda con la depuración inalámbrica.
  6. adb -s <DEVICE_IP_ADDRESS>:5555 usb para volver atrás cuando haya terminado.

No se requiere root

Para encontrar la dirección IP del dispositivo: ejecuta adb shell y luego netcfg . Lo verás allí. Para encontrar la dirección IP mientras usa OSX, ejecute el comando adb shell ip route .

ADVERTENCIA : dejar la opción habilitada es peligroso, cualquiera en su red puede conectarse a su dispositivo para depurarlo, incluso si está en la red de datos. ¡Hazlo solo cuando estés conectado a un wifi confiable y recuerda desconectarlo cuando hayas terminado!

@Sergei sugirió que se modifique la línea 2, comentando: "la opción -d necesitaba conectarse al dispositivo USB cuando la otra conexión persiste (por ejemplo, un emulador conectado u otro dispositivo Wi-Fi)".

Esta información puede resultar valiosa para los lectores futuros, pero retrocedí a la versión original que había recibido 178 votos a favor.

En algunos dispositivos , puedes hacer lo mismo incluso si no tienes un cable USB :

  1. Habilitar ADB sobre la red en la configuración del desarrollador Debería mostrar la dirección IP
  2. adb connect <DEVICE_IP_ADDRESS>:5555
  3. Deshabilitar la configuración cuando haya terminado

Con Android Studio, hay un complemento que le permite conectar la depuración USB sin la necesidad de utilizar ningún comando ADB desde un terminal.




(No se requiere root) Hay un método mejor, fácil y con UI para Android Studio

Plugin de IntelliJ y Android Studio creado para conectar rápidamente su dispositivo Android a través de WiFi para instalar, ejecutar y depurar sus aplicaciones sin un USB conectado. Presione un botón y olvídese de su cable USB.

solo instale el complemento Android WiFi ADB

Descargue e instale Android WiFi ADB directamente desde

Intellij / Android Studio: Preferencias / Configuraciones-> Complementos-> Buscar repositorios

.

¡Recuerda! por primera vez para inicializar el dispositivo debe tener que conectarse usando usb

Alternativamente, puede descargar el complemento desde el sitio del complemento de JetBrains e instalarlo manualmente en: Preferencias / Configuraciones-> Complementos-> Instalar el complemento desde el disco.

Puede conectarse y administrar sus dispositivos fácilmente ....... para obtener más información, consulte aquí https://github.com/pedrovgs/AndroidWiFiADB




La utilidad adb tiene la capacidad de conectarse a un dispositivo a través de TCP / IP. Sin embargo, adbd normalmente no está escuchando conexiones TCP.

Si desea ejecutarlo, necesita un dispositivo de ingeniería (en otras palabras, necesita una raíz). Luego sigue las instrucciones en esta publicación:

¿Cómo puedo conectarme a Android con ADB a través de TCP?

Como esto solo funciona en dispositivos eng, no es oficialmente compatible. Use bajo su propio riesgo, espere errores, etc.




Si desea habilitar adb inalámbrico en el dispositivo sin conectarlo en absoluto (se requiere root):

  1. Instale una aplicación de terminal en el dispositivo (como Android Terminal Emulator) Escriba lo siguiente
  2. su
  3. setprop service.adb.tcp.port 5555
  4. detener adbd
  5. comenzar adbd

Como ya tiene la terminal abierta, puede encontrar la dirección IP del dispositivo:

ip addr show

Luego, en su entorno de depuración ejecute el comando:

adb connect ip.of.the.device

Esto hará que el dispositivo aparezca en la lista como cualquier otro emulador que pueda tener. Tenga en cuenta que el TCP permanecerá abierto hasta que restablezca el dispositivo. También es posible que desee instalar una aplicación Wi-Fi Keep Alive si a menudo experimenta desconecciones.

Recuerde cerrar el TCP al conectarse a redes públicas si desea sentirse seguro. Puede hacer lo siguiente o simplemente reiniciar el dispositivo:

  1. su
  2. setprop service.adb.tcp.port -1
  3. detener adbd
  4. comenzar adbd



Encontré mi respuesta aquí :

  1. Conecte el dispositivo Android y la computadora host adb a una red Wi-Fi común accesible para ambos. Hemos encontrado que no todos los puntos de acceso son adecuados; Es posible que necesite utilizar un punto de acceso cuyo firewall esté configurado correctamente para admitir adb.
  2. Conecte el dispositivo con un cable USB al host.
  3. Asegúrese de que adb se esté ejecutando en modo USB en el host.

    $ adb usb
    restarting in USB mode
  4. Conéctese al dispositivo a través de USB.

     $ adb devices
     List of devices attached
     ######## device
  5. Reinicie el host adb en el modo tcpip.

    $ adb tcpip 5555
    restarting in TCP mode port: 5555
  6. Averigüe la dirección IP del dispositivo Android: Settings -> About tablet -> Status -> IP address . Recuerde la dirección IP, del formulario #.#.#.#. a veces no es posible encontrar la dirección IP del dispositivo Android, como en mi caso. entonces puede obtenerlo usando adb de la siguiente manera: $ adb shell netcfg y el debería estar en la última línea del resultado.

  7. Conecte el host adb al dispositivo:

    $ adb connect #.#.#.#
    connected to #.#.#.#:5555
  8. Retire el cable USB del dispositivo y confirme que todavía puede acceder al dispositivo:

    $ adb devices
    List of devices attached
    #.#.#.#:5555 device

¡Ahora estás listo para irte!

Si la conexión adb se pierde alguna vez:

  1. Asegúrese de que su host aún esté conectado a la misma red Wi-Fi que su dispositivo Android.
  2. Vuelva a conectar ejecutando el paso "adb connect" nuevamente.
  3. O si eso no funciona, restablezca su host adb:

     adb kill-server

y luego volver a empezar desde el principio.




Para todos, esto, existe un método mejor ( MÉTODO MÁS FÁCIL ):

1) Un complemento para las salidas de estudio de Android, llamado Android wifi ADB

2) Ir a archivo -> configuración -> Complementos -> Buscar repositorios

3) Busque Android WiFi ADB , haga clic en INSTALAR y luego reinicie en la solicitud

4) Verá un nuevo icono , que es su nuevo complemento.

Ahora para hacer que esto funcione :

5) Vaya a la opción de desarrollador de su teléfono y habilite DEBUGGING (debe)

6) También habilitar, PERMITIR EL DEPURADO SOBRE TCP / NETWORK

7) Conecte su teléfono a través de USB , y asegúrese de que ambos teléfonos y su PC / portátil estén conectados a la misma red (ya sea hotspot o wifi)

8) HAGA CLIC EN EL NUEVO ICONO (es decir, su ANDDIFI Wifi ABD )

9) Tu teléfono se detecta y se conecta a través de wifi / hotspot , y por lo tanto ahora puedes desconectar el usb . Este es un proceso de una sola vez, por lo tanto, es posible que no necesite mantener el teléfono conectado a través del usb.

Esto salvará su teléfono de cargas irregulares y también, un remedio para cables USB de longitud corta.




Escribí un script de shell que puede permitirle depurar un dispositivo Android a través de Wi-Fi.

Aquí está el código:

#!/usr/bin/env bash
#Notice: if unable to connect to [ip]:5555,
#try adb kill-server then try again.

adb shell ip route > addrs.txt
#Case 1:Nexus 7
#192.168.88.0/23 dev wlan0  proto kernel  scope link  src 192.168.89.48

#Case 2: Smartsian T1,Huawei C8813
#default via 192.168.88.1 dev eth0  metric 30
#8.8.8.8 via 192.168.88.1 dev eth0  metric 30
#114.114.114.114 via 192.168.88.1 dev eth0  metric 30
#192.168.88.0/23 dev eth0  proto kernel  scope link  src 192.168.89.152  metric 30
#192.168.88.1 dev eth0  scope link  metric 30

ip_addrs=$(awk {'if( NF >=9){print $9;}'} addrs.txt)

echo "the device ip address is $ip_addrs"

echo "connecting..."

rm addrs.txt

adb tcpip 5555

adb connect "$ip_addrs"



Para ventanas:

Paso 1. Haga un archivo por lotes con los comandos a continuación y llame al archivo w.bat .

Paso 2. Copie los contenidos a continuación en w.bat y guárdelos en cualquiera de las carpetas que están en %path% de su sistema Windows

echo ***Get phone in Wi-Fi mode***
echo ***Get phone in Wi-Fi mode***

adb devices
echo ***Remove cable from the phone now***
adb tcpip 9000

adb connect 192.168.1.1:9000
adb connect 192.168.1.2:9000
adb connect 192.168.1.3:9000
adb connect 192.168.1.4:9000
adb connect 192.168.1.5:9000
adb connect 192.168.1.6:9000

// <- Hasta aquí ->

Paso 3. Conecte su teléfono y su PC con un cable

Paso 4. Asegúrate de que el teléfono esté en modo Wi-Fi

Paso 5. Retire el cable cuando el archivo por lotes le indique

Paso 6. Escriba w.bat en el indicador de Windows (inicio -> ejecutar -> escriba CMD , presione Entrar ) (la pantalla en negro es el indicador de Windows DOS), si lo copió en una de las carpetas de ruta, puede ejecutarlo desde cualquier lugar, de lo contrario, ejecute desde la carpeta donde creó este archivo.

La salida del archivo por lotes será algo como esto:

C:\Windows\System32>w

C:\Windows\System32>echo ***Get phone in Wi-Fi mode***
***Get phone in Wi-Fi mode***

C:\Windows\System32>echo ***Get phone in Wi-Fi mode***
***Get phone in Wi-Fi mode***

C:\Windows\System32>adb devices
List of devices attached
d4e9f06 device

C:\Windows\System32>echo ***Remove cable from the Phone now***
***Remove cable from the Phone now***

C:\Windows\System32>adb tcpip 9000
restarting in TCP mode port: 9000

C:\Windows\System32>adb connect 192.168.1.1:9000
unable to connect to 192.168.1.1:9000:9000

C:\Windows\System32>adb connect 192.168.1.2:9000
connected to 192.168.1.2:9000

C:\Windows\System32>adb connect 192.168.1.3:9000
unable to connect to 192.168.1.3:9000:9000

C:\Windows\System32>adb connect 192.168.1.4:9000
unable to connect to 192.168.1.4:9000:9000

C:\Windows\System32>adb connect 192.168.1.5:9000
unable to connect to 192.168.1.5:9000:9000

C:\Windows\System32>adb connect 192.168.1.6:9000
unable to connect to 192.168.1.6:9000:9000

Nota 1: Encuentre esto en la salida, (ignore todo -> no se puede conectar <- errores)

connected to xxx.xxx.x.x:9000

Si ve esto en el resultado, simplemente retire el cable de la PC y vaya a Eclipse y ejecute para instalar la aplicación en el dispositivo; eso debería ser.

Nota 2: DESCONECTE O PARA CAMBIAR EL MODO INALÁMBRICO DESACTIVADO: Escriba el comando a continuación. Debería decir reiniciar en modo USB: en este momento, la PC y la computadora NO deberían estar conectadas con un cable:

C:\Users\dell>adb usb
restarting in USB mode

Nota 3: Pasos para encontrar la dirección IP del teléfono (tomada desde el desbordamiento de la pila)

Buscar la dirección IP de MI TELÉFONO:

a. Dial *#*#4636#*#* to open the Testing menu.
b. In the Wi-Fi information menu: click Wi-Fi Status
c. Wi-Fi status can be blank for the first time
d. Click Refresh Status
e. In the IPaddr: <<IP ADDRESS OF THE PHONE IS LISTED>>

Nota 4: El rango de direcciones IP de mi conexión Wi-Fi del teléfono normalmente es como las direcciones IP mencionadas a continuación,

192.168.1.1

192.168.1.2

192.168.1.3

192.168.1.4

192.168.1.5

192.168.1.6

Nota 5: si obtiene cualquier otra secuencia de direcciones IP que sigan siendo reasignadas a su teléfono, puede simplemente cambiar la dirección IP en el archivo w.bat .

Nota 6: Este es un método de fuerza bruta , que elimina todo el trabajo manual para seguir buscando la dirección IP y conectarse a Eclipse / Wi-Fi.

ÉXITO Nota 7: Entonces, en resumen, la actividad regular sería algo como esto:

Step 1. Connect PC and Wi-Fi via a cable
Step 2. Start CMD - to go to Windows DOS prompt
Step 3. Type "w"
Step 4. Find connected command in the output
Step 5. Success, remove cable and start using Eclipse



>##    open command prompt with Run as Administrtor ##

    adb connect ipdevice:5037



La mejor manera es usando ADBConnect (complemento Eclipse ) y ADB Wireless (aplicación para dispositivo Android).




Para Ubuntu / Linux:

  1. Asegúrese de que su dispositivo esté funcionando para la depuración: http://developer.android.com/tools/help/adb.html#Enabling
  2. Vaya a su carpeta sdk y encuentre la carpeta plataforma-herramientas
  3. Use ./adb devices para enumerar los dispositivos conectados. Asegúrese de que solo esté conectado un dispositivo y no haya un emulador en ejecución.
  4. Busque la dirección IP de su dispositivo, puede encontrarla en su dispositivo: http://developer.android.com/tools/help/adb.html#wireless , o adb shell así: ./adb shell then netcfg . Verá una lista de direcciones IP. Encuentra wlan0 , en mi caso 192.168.100.3/2.
  5. ./adb tcpip 5555
  6. Finalmente, ingrese ./adb connect <Your device IP Address>:5555 en su terminal. Ahora puede implementar la aplicación en su dispositivo a través de Wi-Fi.



Un imp point probablemente se perdió aquí - una vez que hagas un remo de adb - la conexión TCP se pierde, por lo tanto, tienes que hacer un adb connect IP: port una vez más




  1. En Device Settigs-> "Opciones de desarrollador" -> "Revocar autorizaciones de depuración de USB".
  2. Conecte el dispositivo a través de USB y asegúrese de que la depuración esté funcionando.
  3. adb tcpip 5555
  4. adb connect <DEVICE_IP_ADDRESS>:5555
  5. Desconectar USB
  6. adb devices



Conecte el dispositivo a través de USB y asegúrese de que la depuración esté funcionando. estos pasos se toman si ya ha instalado adb y establece su ruta en el entorno varialbe

  1. abra cmd y escriba lo siguiente
  2. adb tcpip 5555
  3. encuentre la dirección IP con adb shell ip route
  4. adb connect DEVICE_IP_ADDRESS:5555
  5. Desconecte el USB y proceda con la depuración inalámbrica.



La respuesta de Radu Simionescu funcionó para mí. Gracias. Para aquellos que no pueden ver la dirección IP de su dispositivo Android, vaya a Settings > Wireless > Wi-Fi y luego mantenga presionada la conexión wifi a la que está conectado. Luego seleccione Modify network config comprobación de Modify network config en Show Advance Options y la sección de desplazamiento a IP address .

Después de instalar adb en su sistema, ejecute killadd adb y adb start-server para actualizar adb. A veces podríamos tener problemas como aquí




Escribí un script simple para Windows:

Paso 1. Haga un archivo por lotes con los comandos a continuación y llame al archivo wifi_dedug.bat y copie los siguientes contenidos:

    adb tcpip 5555
    pause
    adb shell "ip addr show wlan0  | grep 'inet ' | cut -d' ' -f6|cut -d/ -f1" > tmpFile 
    pause
    set /p ip= < tmpFile 
    @echo %ip%
    del tmpFile
    @echo %ip%
    adb connect %ip%
    pause

Paso 2. conecta tu dispositivo a la pc.

Paso 3. Inicie el archivo por lotes (ingrese la clave cuando se le solicite)

Paso 4. desconecta tu dispositivo y despliega / depura vía wifi.




Yo uso adb shell ip -f inet addr show wlan0 para encontrar el dispositivo ip después de adb tcpip 5555 .

La versión más nueva está en desuso adb netcfg. Por lo tanto, esta es la forma correcta de encontrar la IP del dispositivo cuando el nombre de la interfaz es wlan0 (nombre de interfaz predeterminado).




Eso es demasiado simple ...

Paso 1:

connect mobile to laptop (PC)
find adb path in Eclipse or Go Tast manager (<kbd>Ctrl</kbd> + <kbd>Shift</kbd> + <kbd>Esc</kbd>) -> process -> adb.exe -> right-click -> open file location -> copy the path of the open window (like D:\.....)

Paso 2:

open cmd and change directory like C:, D:, E:, and G:
 1: C:\Users\UMT>D:
 2: D:\> cd (past path of adb) like (ANDROID eclipse\Eclipse Setup\adt-bundle-windows-x86_64-202\sdk\plat-form-tools) and press enter
 3: Then type `adb tcpip 5555`. Press <kbd>Enter</kbd> ... make sure your mobile connects to the PC

Paso 3:

Open new cmd and same above, go to the adb directory and type
adb connect 192.168.x.x(device ip):5555
press enter now connect it.

Dirección IP del dispositivo: Configuración -> Acerca del teléfono -> Estado -> Dirección IP