通过 WiFi 将 ADB 连接到设备

标准 ADB 配置涉及到物理设备的 USB 连接。
如果你愿意,可以切换到 TCP / IP 模式,然后通过 WiFi 连接 ADB。

没有 root 设备

  1. 进入同一个网络:

    • 确保你的设备和计算机位于同一网络中。
  2. 使用 USB 电缆将设备连接到主机。

  3. 通过网络将 adb 连接到设备:

    当你的设备通过 USB 连接到 adb 时,请执行以下命令以侦听端口上的 TCP / IP 连接(默认为 5555):

    • 输入 adb tcpip <port>(切换到 TCP / IP 模式)。
    • 断开 USB 电缆与目标设备的连接。
    • 输入 adb connect <ip address>:<port>(端口是可选的;默认为 5555)。

    例如:

    adb tcpip 5555
    adb connect 192.168.0.101:5555
    

    如果你不知道设备的 IP,你可以:

    • 检查设备的 WiFi 设置中的 IP。
    • 使用 ADB 发现 IP(通过 USB):
      1. 通过 USB 将设备连接到计算机
      2. 在命令行中,键入 adb shell ifconfig 并复制设备的 IP 地址

    要通过 USB 恢复调试,请使用以下命令: ****

    adb usb
    

    你还可以通过在 Android Studio 上安装插件来通过 WiFi 连接 ADB。为此,请转到设置>插件和浏览存储库,搜索 ADB WiFi ,安装它,然后重新打开 Android Studio。你将在工具栏中看到一个新图标,如下图所示。通过 USB 将设备连接到主机,然后单击此 AndroidWiFiADB 图标。无论你的设备是否已连接,它都会显示一条消息。连接后,你可以拔下 USB。

    StackOverflow 文档

植根设备

注意: 某些已植根的设备可以使用 Play 商店中的 ADB WiFi 应用程序以简单的方式启用此功能。此外,对于某些设备(特别是那些具有 CyanogenMod ROM 的设备),此选项存在于设置中的开发者选项中。启用它将通过简单地执行 adb connect <ip address>:<port> 为你提供连接到 adb 所需的 IP 地址和端口号。

如果你有 root 设备但无法访问 USB 电缆

以下答案详细解释了该过程: http//stackoverflow.com/questions/2604727/how-can-i-connect-to-android-with-adb-over-tcp/3623727#3623727 最重要的命令如下所示。

在设备中打开终端并键入以下内容:

su
setprop service.adb.tcp.port <a tcp port number>
stop adbd
start adbd

例如:

setprop service.adb.tcp.port 5555

在你的计算机上:

adb connect <ip address>:<a tcp port number>

例如:

adb connect 192.168.1.2:5555

要关闭它:

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

避免超时

默认情况下,adb 将在 5000 ms 后超时。在某些情况下可能会发生这种情况,例如慢速 WiFi 或大型 APK。

Gradle 配置中的一个简单更改可以解决这个问题:

android {
    adbOptions {
        timeOutInMs 10 * 1000
    }
}