networking - ADB如何用TCP连接到安卓?

  显示原文与译文双语对照的内容

我正在尝试在 Droid 上调试一个应用程序,但我在通过USB连接设备时遇到了一些困难。 host,处我的开发服务器是一个 Windows 7 64位 虚拟机运行于 Hyper-V,所以我无法通过USB直接连接在客户机即带有

我安装了几个不同的USB-over-TCP解决方案,但是连接似乎有问题,因为 ADB 监视器报告"DeviceMonitor启动监视失败"重复。 是否有一种方法可以直接从开发机器上直接连接到使用网络的设备上的守护进程,而不是USB连接或者其他可行的选项?

时间: 原作者:

手工处理

从你的设备,如果它是根

随着commands,根据 xda-developers上发贴,你可以启用亚行引起过 Wi-Fi device:


su
setprop service.adb.tcp.port 5555
stop adbd
start adbd

你可以禁用它并返回ADB以在


setprop service.adb.tcp.port -1
stop adbd
start adbd

从计算机上,如果你已经有USB访问

它是来的更容易使用 Wi-Fi,如果你已经有 usb, switch to. 从计算机上通过USB连接的设备发出命令


adb tcpip 5555
adb connect 192.168.0.101:5555

确保用实际分配给设备的IP地址替换 192.168.0.101

你可以通过两种方式找到平板电脑的IP地址:

手动IP发现:

进入android设置的WiFi,点击动作栏( 垂直省略号) 中的菜单按钮,点击高级并查看屏幕底部的IP地址。

使用ADB来发现 IP:

通过adb执行以下命令:


adb shell ip -f inet addr show wlan0

告诉ADB守护进程返回USB监听

 
adb usb

 

自动化进程的应用程序

在 Google Play 上也有几个应用程序可以自动化这个过程。 快速搜索建议 adbWireless无线网路亚行和无线上网的亚行 。 所有这些都需要根访问,但是 adbWireless 需要较少的权限。

原作者:

这很简单如果你的手机是根。

Google Play 下载一个终端 请确保你的Android设备已连接到你的Wi-Fi,并获得英镑的Wi-Fi IP地址。 打开终端程序并键入:


su
setprop service.adb.tcp.port 5555
stop adbd
start adbd

现在转到你的计算机( 假设你正在使用 Windows ),在桌面上为" cmd.exe"创建一个快捷方式( 没有报价) 。

右键单击cmd快捷方式并选择 "Run as Administrator"

更改为 android-sdk-windowstools 文件夹

类型:


adb connect ***wifi.ip.address***:5555

(example: adb connect 192.168.0.105:5555)

adb现在应该说你已经连接。

注意: 如果速度过快,给连接命令它可能失败。 所以在你说这不工作之前,至少要尝试两次。

原作者:

使用方向有其他人发表过从 xda-developers ),,我需要得到同时 USB和TCPIP为工作亚行 ( 不询问),所以我使用了下面的选项(

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

原作者:

来自 adb --help:


connect <host>:<port> - Connect to a device via TCP/IP

这是一个command-line选项,顺便说一下。

你应该尝试将电话连接到 Wi-Fi,然后从你的路由器获取它的IP地址。 它不能在细胞网络上工作。

端口为 5554.

原作者:
  1. 通过USB连接设备并确保调试工作正常,然后运行:

    
    adb tcpip 5555
    adb connect <DEVICE_IP_ADDRESS>:5555
    
    
  2. 断开USB并继续进行无线调试。

  3. 完成并想回到USB调试后,运行:

    
    adb -s <DEVICE_IP_ADDRESS>:5555
    
    

要查找设备的IP地址,请转到 Settings> Wi-Fi> Advanced> IP Address 在设备上或者运行 adb shell netcfg

不需要根。一次只能调试一个设备。

参见这篇XDA文章。

adb 命令位于 Android SDK的platform-tools 文件夹中。

原作者:

使用TCP端口连接平板机。 确保你的系统和设备已连接到同一个网络。

  1. 打开控制台 cmd.exe
  2. 类型 adb tcpip 5555
  3. 转到系统-> 开发选项-> USB调试 --> 取消它为TCPIP连接取消选中它
  4. 类型 adb connect 192.168.1.2 这是你的设备IP地址
  5. 连接到 192.168.1.2

如果你收到了英镑错误: 找不到设备。请将usb设备连接到系统,然后遵循相同的过程。
对于根设备


setprop service.adb.tcp.port 5555
stop adbd
start adbd

原作者:

我完全的不知道如何连接的设备没有任何USB连接,但是如果你设法将它的连接在另一台计算机你可以 switch 也许该adbd到TCP模式通过发出


adb tcpip <port>

从终端,通过网络通过网络上的任何PC连接到你的设备:


adb connect <ip>:<port>

可能也可以从设备上的终端 switch 到TCP模式。

原作者:
 
adb tcpip 5555

 

奇怪,但这只适用于我的USB电缆连接,然后我可以拔掉 USB,并为它的所有其他东西。

返回到usb时,

 
adb usb

 

只有在连接usb时才能工作。

不管我是否发出


setprop service.adb.tcp.port 5555

或者


setprop service.adb.tcp.port -1

然后停止&启动 adbd,我仍然需要usb电缆或者它不工作。

所以,如果我的ADB通过usb运行不正常,我打赌我将不能通过WiFi启用 ADB 。

原作者:
...