我正在尝试调试摩托罗拉Droid上的应用程序,但通过USB连接到设备时遇到一些困难。我的开发服务器是一个在Hyper-V中运行的Windows 7 64位虚拟机,因此我无法在来宾或主机中通过USB直接连接。
我安装了两种不同的USB over TCP解决方案,但连接似乎有问题,因为ADB监视器反复报告“devicemonitor failed to start monitoring”。是否有一种方法可以直接从开发机器上的客户端连接到设备上的守护程序,使用网络而不是USB连接或其他可行的选项?
我正在尝试调试摩托罗拉Droid上的应用程序,但通过USB连接到设备时遇到一些困难。我的开发服务器是一个在Hyper-V中运行的Windows 7 64位虚拟机,因此我无法在来宾或主机中通过USB直接连接。
我安装了两种不同的USB over TCP解决方案,但连接似乎有问题,因为ADB监视器反复报告“devicemonitor failed to start monitoring”。是否有一种方法可以直接从开发机器上的客户端连接到设备上的守护程序,使用网络而不是USB连接或其他可行的选项?
当前回答
这些是我遵循的步骤,对我来说很有效,
adbshellifconfig(从这里获取设备的ip地址)adb-tcpip 7777(将adb连接到某个端口)adb connect“ipad地址”:7777
其他回答
我不知道如何在没有任何USB连接的情况下连接设备,但如果您设法在另一台计算机上连接,您可以通过发出以下命令将adbd切换到TCP模式
adb tcpip <port>
通过以下方式从终端连接到您的设备:
adb connect <ip>:<port>
也许也可以从设备上的终端切换到TCP模式。
另外一个注意事项(艰难地学会了):您不应该同时激活您的公司VPN连接。。。
正如Brian所说:
根据xda开发人员的一篇帖子,您可以使用以下命令在设备上通过WiFi启用ADBsetprop服务.adb.tcp.port 5555停止adbd启动adbd您可以禁用它,并使用setprop服务.adb.tcp.port-1停止adbd启动adbd如果你已经有USB连接,那么切换到使用WiFi就更容易了。通过USB连接设备的计算机上的命令行发出命令adb tcpip 5555adb连接192.168.0.101:5555告诉ADB守护程序返回USB监听adb-usb接口Android市场上也有几个应用程序可以自动完成这一过程。
它可以工作。你只需要访问android shell并键入这些命令。。。
市场上还有一种(更简单的)解决方案:adbWireless,它将自动设置您的手机。
根是必需的!对于两者。。。
如果您想通过WiFi轻松连接设备以运行、调试或部署Android应用程序,可以使用我开发的开源IntelliJ插件。这里是代码,这里是可以使用的插件。
用法很简单。这里有一张gif图:
手动流程
从你的设备,如果它是根
根据xda开发人员的一篇帖子,您可以通过以下命令从设备通过Wi-Fi启用ADB:
su
setprop service.adb.tcp.port 5555
stop adbd
start adbd
您可以禁用它,并使用
setprop service.adb.tcp.port -1
stop adbd
start adbd
从计算机,如果您已经有USB访问权限(不需要root)
如果你已经有了USB,切换到使用Wi-Fi更容易。通过USB连接设备的计算机上的命令行发出命令
adb tcpip 5555
adb connect 192.168.0.101:5555
确保将192.168.0.101替换为实际分配给设备的IP地址。完成后,可以通过运行以下命令断开与adb-tcp会话的连接:
adb disconnect 192.168.0.101:5555
您可以通过两种方式查找平板电脑的IP地址:
手动IP发现:
进入Android的WiFi设置,单击操作栏中的菜单按钮(垂直省略号),点击高级,然后在屏幕底部看到IP地址。
使用ADB发现IP:
通过adb执行以下命令:
adb shell ip -f inet addr show wlan0
告诉ADB守护程序返回USB监听
adb usb
自动化流程的应用程序
Google Play上还有几个应用程序可以自动完成这一过程。快速搜索可以找到adbWireless、WiFi ADB和ADB WiFi。所有这些都需要root访问权限,但adbWireless需要更少的权限。