简体   繁体   中英

Connecting ADB using Wifi for non rooted device

I am trying to connect ADB using WIFI on my non rooted android devices. Currently i have 3 android devices out of which 2 are running on Android 4.0.4 and 1 on 2.3. My device IP's are 192.168.2.122, 192.168.2.131, 192.168.2.115

I have enabled USB debugging on all of them and follow all the steps as listed here

On the command line, I did the following

adb tcpip 5555
restarting in TCP mode port:5555 
adb connect 192.168.2.131

My problem is on one of my device(Android 4.0.4) ADB is getting connected with the message saying

connected to 192.168.2.122:5555

However when i try connecting other it says

unable to connect to 192.168.2.131:5555

Screenshot of the terminal page: 终端页面的屏幕截图:

Image of terminal on the connected device: 在此输入图像描述

Image of terminal on device which is not getting connected: 在此输入图像描述

Many of the posts on Stack Over Flow says i need to root my phone for the same but the device on which ADB is getting connected is also not rooted.

May be the problem with the devices not getting connected is that their ports are not getting listened.

Any help appreciated.

I had the same problem.

I firstly connected my Android4.0.3 based device via USB and set the TCP/IP port to 5555

$ adb tcpip 5555

After that I disconnected USB connection and connected to device via WiFi IP and it worked.

$ adb kill-server
$ adb connect 192.168.2.5 
* daemon not running. starting it now on port 5037 *
* daemon started successfully *
connected to 192.168.2.5:5555

The steps are correct, with one small part different: the connect step has to be done after taking out the cable. To reiterate follow the steps exactly as below and it will work for non-rooted devices also. I tested it with several non-rooted devices including Moto G, Nexus 1, Videocon etc.

  1. Attach mobile via USB and type:

     adb tcpip 5555 
  2. To find the mobile ip type:

     adb shell ip -f inet addr show wlan0 

The ip address will be shown in second line like this:

inet 192.168.1.233/24 brd 192.168.1.255 scope global wlan0

where 192.168.1.233 is the ip address of your mobile.

  1. Remove USB cable and type:

     adb connect mobile-ip:5555 

After read this question I decided to create a easy to use solution to fix this problem. You can use an open source IntelliJ Plugin I've developed. Here is the code and here the plugin ready to be used.

The usage is quite simple. Here you have a gif:

在此输入图像描述

Remember that old devices using an Android 2.X does not support this Android Debug Bridge feature. That's why you can't connect the device you show in the screenshots.

It works perfect with android 4.0.4. but, below that it does not works. so, the answer to your problem is to upgrade all devices to 4.0.4.

终端页面的屏幕截图

first connect device using USB

then apply the commands....

Turn on adb over wifi on your phone 在此输入图像描述

Then create file on your desktop ex. 'connect.bat' and paste this code (you have to only change sdk, port and ip):

SET sdk=F:\Praca\sdk\platform-tools
SET port=5555
SET ip=192.168.1.101

cd /dd %sdk%
adb tcpip "%port%"
adb shell netcfg
adb connect  "%ip%:%port%"
echo connected by WiFi
pause
adb -s "%ip%:%port%" usb
echo disconnected
pause

It's really fast and simply solution. Have fun!

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM