目标列表

ffx target list 用于列出可见目标。下面列出了四种目标:

  • 实现 mDNS 的目标
  • USB上显示的目标
  • user 模式模拟器目标
  • 人工定位,通过 ffx target add 添加

发现

ffx target list 的基本行为是发现目标。根据配置选项,它会通过以下两种方式之一收集目标的相关信息:通过守护程序直接收集:

基于守护程序的发现

启用 mDNS 和/或 USB 发现(分别通过 discovery.mdns.autoconnectfastboot.usb.disabled 配置选项)后,ffx target list 会询问 ffx 守护程序发现了什么目标,并报告该信息。守护程序缓存的任何内容都将报告给用户。

本地发现

当上述两个发现选项均处于停用状态时,ffx target list 会执行本地发现:它会执行自己的 mDNSUSB、模拟器和手动目标发现。它会主动广播 mDNS 请求并扫描 USB 设备。由于目标并非总是立即响应 mDNS 请求,因此在此模式下,ffx target list 会等待一段时间(默认为 2,000 毫秒,可通过 discovery.timeout 配置),以便为目标留出响应时间。

目标信息

ffx target list 的输出包含有关每个已发现目标的信息,其中包括:

  • 名称
  • 序列号
  • 类型(例如 core.x64
  • 状态(ProductFastboot
  • 地址(IP 地址列表)
  • 遥控器状态(遥控器服务是否可用)

根据可用的信息,所有这些信息都可能会列为“未知”。

本地发现和状态信息

执行本地发现时,ffx target list 必须主动探测每个发现的目标,以确定其状态和遥控器状态。此探测可能需要几秒钟的时间,具体取决于各种因素,但请参阅下文,了解如何控制此行为。

选项

节点名称

如果提供了 nodename,则提供的信息将仅限于该设备。请注意,使用本地发现功能时,系统会执行完整的 mDNS 查询和 USB 扫描来查找命名的设备,但请参阅下文,了解如何控制此行为。

本地发现选项

以下选项仅在执行本地发现时有效:

  • --no-mdns:不执行 mDNS 广播
  • --no-usb:不执行 USB 扫描
  • --no-probe:不连接到要探测的目标以获取其类型、状态和遥控器状态

过滤选项

输出可以按地址类型进行限制:

  • --no-ipv4:不返回 IPv4 地址
  • --no-ipv6:不返回 IPv6 地址

格式选项

ffx target list 能以多种格式提供信息。默认情况下,它会生成一个设置了格式的表。不过,您可以通过以下选项控制格式:

  • --format simple|s:表格格式
  • --format tabular|table|tab|t:表格格式
  • --format addresses|addrs|addr|a:仅限地址
  • --format name-only|n:仅名称
  • --format json|JSON|jJSON 格式