Android 开发者需要在真实设备上测试其应用。Android 调试桥 (ADB) 是推送应用和进行调试的首选工具。ADB 主要有以下三种用途:
- 通过 USB 使用 ADB
- 通过 Wi-Fi 使用 adb
- 通过以太网使用 ADB
对于大多数手机和平板电脑,您可以使用 USB-C 数据线将 Android 设备连接到开发机器,然后 ADB 就会“正常运行”。截至 2023 年 8 月,大多数 Chromebook 都不支持通过 USB 使用 ADB,因此只剩下另外两种方法:Wi-Fi 和以太网。
注意:您还可以使用 ADB over Bluetooth 适用于 WearOS 设备
通过 Wi-Fi 使用 adb
如果您的设备搭载的是 Android 11(API 30)或更高版本,则可以使用 Android Studio 随附的使用 Wi-Fi 配对设备功能。
对于搭载 Android 10 或更低版本的设备,或者如果您在通过 Android Studio 进行配对时遇到问题,可以使用 IP 设备和终端手动连接。
- 确保您的开发计算机和 Android 设备连接到同一无线网络。
- 确保您的网络允许通过端口
5555(或其他手动选择的端口)传输流量。部分企业和家庭网络具有防火墙,会阻止 ADB 正常运行。您还可以将手机用作无线网络枢纽,以提供允许端口5555流量的网络,不过这可能会导致手机产生大量网络流量并消耗大量电量。 - 对于非 ChromeOS 手机和平板电脑,您需要启用 TCP/IP 模式。为此,请通过 USB 将 Android 设备连接到开发机器,然后在开发机器上运行命令
adb tcpip 5555。这会将设备置于 TCP/IP 模式,并监听端口 5555。启用后,您可以断开 USB 数据线。 - 确定设备的 IP 地址。IPv4 地址是最常见的地址类型,看起来像这样:
192.168.1.4。IPv6 地址正变得越来越普遍,其格式如下所示:2001:0db8:3c4d:0015:0000:0000:1a2f:1a2b。如果您的设备同时列出了这两个地址,请使用 IPv4 地址。- 在手机/平板电脑上,前往 Android 设置、信息,然后向下滚动,直到看到您的 IP 地址。
- 在 ChromeOS 上,点击右下角的时钟,点击网络图标下方的下拉菜单,然后点击您当前连接的网络。在网络标题下,您会看到分配给 Chromebook 的 IP 地址。
- 在开发机器上,输入
adb connect IP_ADDRESS_FROM_STEP4,例如adb connect 192.168.1.4。您还可以手动指定端口,例如adb connect 192.168.1.4:5555。 - 像往常一样使用 ADB 或 Android Studio。您可以运行
adb devices来验证连接。
提示:如需了解详情,请参阅通过 Wi-Fi 连接到设备。
通过以太网使用 ADB
在某些情况下,由于防火墙限制,可能无法使用 Wi-Fi 网络,或者有线解决方案可能更合适。在这些情况下,您可以使用以太网网线进行连接。这些步骤与通过 Wi-Fi 使用 ADB 类似,但需要使用以太网线缆。
前提条件
在开始之前,您需要确保设备支持以太网连接:
- 以太网网线:用于在设备之间连接的物理网线。以太网类型 Cat 5/5e/6/6a 均可。
- 以太网端口:测试设备和开发机器的以太网端口。
注意:如果您的设备没有以太网端口,则可以改用以太网加密狗,该加密狗通过 USB 连接到您的设备,并提供以太网功能。
通过以太网连接 ADB
使用以太网网线将设备实际连接起来后,您可以通过该连接启用 ADB。
注意:以下说明假定您的本地网络在 192.168.1.x 地址空间中运行。
提醒:对于非 ChromeOS 手机和平板电脑,您可能需要启用 TCP/IP 模式。为此,请通过 USB 将 Android 设备连接到开发机器,然后在开发机器上运行命令 adb tcpip 5555。这会将设备置于 TCP/IP 模式,并监听端口 5555。启用后,您可以断开 USB 数据线。
- 在开发机器上,记下分配给以太网适配器的 IP 地址。如果未分配地址,您可能需要手动设置此地址,可以设置为
192.168.1.x范围内的地址(例如192.168.1.3),也可以将适配器配置为仅在本地网络上连接,而不使用 DHCP:- 对于 Windows,请参阅更改 TCP/IP 设置一节中的“手动指定 IPv4 设置”。将 IP 地址设置为
192.168.1.3。 - 对于 Mac,请参阅在 Mac 上使用 DHCP 或手动 IP 地址,然后按照手动 IP 地址的说明操作。将 IP 地址设置为
192.168.1.3。 - 对于 Linux,请使用发行版的图形化工具手动设置 IP 地址,或从终端设置 IP 地址,如下所示:运行
ifconfig以查找适配器的标识,然后在运行sudo ifconfig enx00eXXXXXXXXX 192.168.1.3 broadcast 192.168.255.255 netmask 255.255.0.0时使用该标识替换enx00eXXXXXXXXX。这会将 IP 地址更改为192.168.1.3.
- 对于 Windows,请参阅更改 TCP/IP 设置一节中的“手动指定 IPv4 设置”。将 IP 地址设置为
- 在要调试的 Chromebook 上,将以太网地址设置为与开发机器相同的网络范围:
- 按
ctrl+alt+t打开 ChromeOS shell (crosh)。 - 输入
shell,然后按 Enter 键。 - 类型
ssh root@localhost - 如果系统要求您接受 SSH(安全 Shell 协议)指纹,请键入
yes - 默认密码为
test0000 - 输入
ifconfig eth0 192.168.1.2。这会将第一个以太网设备设置为地址192.168.1.2(请记住此地址以供日后使用)。如果eth0不存在,请使用ifconfig列出所有网络设备,并确定以太网端口或加密狗的正确标识符。
- 按
- 在开发机器上,输入
adbconnect 192.168.1.2。您还可以使用adb connect 192.168.1.2:5555手动指定端口。 - 像往常一样使用 ADB 或 Android Studio。您可以运行
adb devices来验证连接。