使用Wifi为非根设备连接ADB

我正尝试在我的非rooted android设备上使用WIFI连接ADB。 目前我有3个Android设备,其中2个在Android 4.0.4上运行,1个在2.3上运行。 我的设备IP是192.168.2.122,192.168.2.131,192.168.2.115

我已经启用了所有的USBdebugging,并按照这里列出的所有步骤

在命令行上,我做了以下

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

我的问题是在我的设备之一(Android 4.0.4)亚行正在与消息说连接

 connected to 192.168.2.122:5555 

但是,当我尝试连接其他说

 unable to connect to 192.168.2.131:5555 

terminal页面的屏幕截图: 终端页面的屏幕截图:

连接设备上的terminal图像: 在这里输入图像说明

没有连接的设备上的terminal的图像: 在这里输入图像说明

Stack Over Flow上的许多post都说我需要为我的手机做同样的事情,但是亚行正在连接的设备也没有扎根。

可能是没有连接的设备的问题是他们的端口没有被收听。

任何帮助赞赏。

它与Android 4.0.4完美的工作。 但是,低于它不起作用。 所以,你的问题的答案是升级所有设备到4.0.4。

我有同样的问题。

我首先通过USB连接了基于Android4.0.3的设备,并将TCP / IP端口设置为5555

 $ adb tcpip 5555 

之后,我断开USB连接,并通过WiFi IP连接到设备,它的工作。

 $ 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 

步骤是正确的,只有一小部分不同:连接步骤必须在取出电缆后完成。 重申下面的步骤完全按照以下步骤操作,并且也适用于非根设备。 我testing了几个非根植设备,包括Moto G,Nexus 1,Videocon等

  1. 通过USB连接手机并input:

     adb tcpip 5555 
  2. 要查找移动IPtypes:

     adb shell ip -f inet addr show wlan0 

IP地址将显示在第二行,如下所示:

 inet 192.168.1.233/24 brd 192.168.1.255 scope global wlan0 

其中192.168.1.233是您的手机的IP地址。

  1. 卸下USB电缆并键入:

     adb connect mobile-ip:5555 

读完这个问题后,我决定创build一个易于使用的解决scheme来解决这个问题。 你可以使用我开发的开源IntelliJ Plugin。 这里是代码, 在这里插件准备使用。

用法很简单。 在这里你有一个gif:

在这里输入图像说明

请记住,使用Android 2.X的旧设备不支持此Androiddebugging桥function。 这就是为什么你不能连接你在屏幕截图中显示的设备。

终端页面的屏幕截图

首先使用USB连接设备

然后应用命令….

在手机上通过wifi打开adb 在这里输入图像说明

然后在你的桌面上创build文件前。 'connect.bat'并粘贴这个代码(你只需要改变sdk,port和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 

这是非常快速和简单的解决scheme。 玩的开心!