我正在尝试调试摩托罗拉Droid上的应用程序,但通过USB连接到设备时遇到一些困难。我的开发服务器是一个在Hyper-V中运行的Windows 7 64位虚拟机,因此我无法在来宾或主机中通过USB直接连接。

我安装了两种不同的USB over TCP解决方案,但连接似乎有问题,因为ADB监视器反复报告“devicemonitor failed to start monitoring”。是否有一种方法可以直接从开发机器上的客户端连接到设备上的守护程序,使用网络而不是USB连接或其他可行的选项?


当前回答

步骤1。

确保adb主机和Android设备都在同一个Wifi网络上。

步骤2。

使用USB电缆将Android设备与计算机连接。一旦你这样做,你的主机将检测到你的设备,adb将开始在电脑上以USB模式运行。您可以使用adb设备检查连接的设备,同时通过执行adb-USB确保adb在USB模式下运行。

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

步骤3。

使用以下命令在tcpip模式下重新启动adb:

$ adb tcpip 5556
restarting in TCP mode port: 5556

步骤4。

查找Android设备的IP地址。有几种方法可以做到这一点:

方式:1转到设置->关于手机/平板电脑->状态->IP地址。方式:2转到可用的Wi-fi网络列表。你连接的那个,点击它并了解你的IP。方法:3尝试$adb-shell netcfg。

现在您知道了设备的IP地址,请将adb主机连接到它。

$ 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

步骤5。

拔下USB电缆,您应该已连接到设备。如果在adb设备中看不到它,只需使用上一步的命令重新连接:

$ 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

要么你现在就可以走了,要么你需要通过执行adb-kill服务器来杀死你的adb服务器,然后再次完成所有步骤。

希望这有帮助!参考:

http://developer.android.com/tools/help/adb.html#wirelesshttp://codetheory.in/android-debug-bridge-adb-wireless-debugging-over-wi-fi/

其他回答

我只是遵循以下步骤,它开始工作,这样我就可以连接到我的android设备。

步骤1:在Android设备中打开终端窗口并执行以下命令。

su——切换到超级用户。setprop service.adb.tcp.port 5555-指定tcp端口-5555是此处的端口号stop adbd-停止adbb服务。start adbd-启动adbd服务。

步骤2:通过ADB,执行以下命令。(从配置ADB的路径)

adb connect 10.10.10.50:555-这里10.10.10.50是android设备的IP地址,5555是端口号。

以下是Brian使用蓝牙回答的扩展:

在Linux上,使用Blueman通过蓝牙与设备共享PC互联网:$sudo apt-get安装blueman$blueman经理配对:启用蓝牙后搜索设备并使其可见$blueman服务网络>[X]网络接入点(NAP)您的手机>设置>蓝牙>配对设备>[X]Internet访问使用蓝牙网络执行ADB命令:$adb tcpip 5555$adb connect$(adb shell ip-f inet addr show bt pan | egrep-o'[0-9]+\.[0-9]+\.[0-10]+\.[0-9]'| head-n1):5555

完成后返回USB模式:

$ adb disconnect
$ adb usb

注意:蓝牙3.0和4.0最高可达24 Mbit/s。

如果您想通过WiFi轻松连接设备以运行、调试或部署Android应用程序,可以使用我开发的开源IntelliJ插件。这里是代码,这里是可以使用的插件。

用法很简单。这里有一张gif图:

我需要让USB和TCPIP都为ADB工作(不要问),所以我做了以下工作(使用其他人从xda开发人员发布的指示)

使用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

在最终放弃了通过TCP直接连接到设备的可能性之后,我最终让Eltima USB转以太网软件开始工作。我几乎已经决定,仅通过仿真器不可能通过网络连接到设备。