本页面提供有关如何通过 ADB 连接到 Fuchsia 设备的问题排查提示。
如果您无法使用 adb 命令通过 USB 连接到 Fuchsia 设备,则可以使用 TCP 端口转发连接到在 Starnix 内运行的 Android 实例:
- 在一个终端中,将主机端口转发到设备的 ADB 端口 ( - 5555):- ffx forward "HOST_PORT=>5555"- 将 - HOST_PORT替换为您机器上的可用端口(例如- 5559)。
- 在第二个终端中,将 ADB 服务器连接到该主机端口: - adb connect localhost:HOST_PORT
不过,此设置可能会因多种原因而无法正常运行,本页包含有关解决常见问题的指南。
与模拟器建立 ADB 连接
如需与 Fuchsia 模拟器 (FEMU) 建立 ADB 连接,您可以改为运行以下命令:
ffx starnix adb connect此命令使 adb 能够使用 TCP 连接到 Fuchsia 模拟器,并使用 ffx 为连接提供的网络地址。
多个 adb 设备
当多个 Android 设备连接到开发机器时,或者当 Android 设备在模拟器中运行时,您可能会看到来自 adb 的错误,指出存在多个设备,但它不知道要使用哪个设备。
如需验证开发机器的 ADB 服务器是否能看到多个设备,请运行以下命令:
adb devices -l如果输出列出了多个设备,您需要为 adb 命令指定目标设备。通过端口转发连接的设备的标识符是您在 adb connect 命令中使用的地址(例如 localhost:5559)。
您可以使用 -s 标志将此标识符作为实参传递给 adb 命令,例如:
adb -s localhost:HOST_PORT shell ls或者,您也可以将其设置为 ANDROID_SERIAL 环境变量,供后续 adb 命令使用:
export ANDROID_SERIAL=localhost:HOST_PORT设置此环境变量后,您可以正常使用 adb 命令。