指令選取

遠端控制服務提供用於查詢和連線的 API 附加在目標上的任意 FIDL 服務

在查詢中可比對系統中任意數量的服務,且select 將會輸出所有相符項目,且會根據其在 元件拓撲

在特殊查詢符合單一服務的情況下,RCS 可以 須連線至該服務,並將控制代碼傳送給主機,供 FFX 使用。 FHO 子工具架構就是透過這種方式建立 FIDL Proxy 會使用元件選取器對應。

如要查詢目標的服務,請編寫「選取器」, 比對感興趣的服務。

選取器語法

許多與元件或服務互動的 ffx 指令會採用元件 做為參數ffx 中的元件選取器使用的語法與 診斷選取器

以下是一些選取遠端控制服務的選取器範例:

core/remote-control:out:fuchsia.developer.remotecontrol.RemoteControl
core/*:out:fuchsia.developer.remotecontrol.RemoteControl
core/*:expose:fuchsia.developer.remotecontrol.RemoteControl
core/remote-control:out:*
core/*:expose:fuchsia.developer.remotecontrol.R*

選取器區隔

選取器包含三個組成部分: <component moniker>:<node selector>:<property selector>。具體來說 。萬用字元 (*) 適用於選取器的每個區段。

請參考以下例子: core/remote-control:out:fuchsia.developer.remotecontrol.RemoteControl

  • core/remote-control元件可組合項。 這個屬性專門指定元件拓撲中的路徑。

  • out 是節點選取器。在 ffx 中,這必須是下列其中一個值 值,對應至元件中使用的轉送術語 資訊清單,並定義在轉送術語說明文件中。

    • out:元件提供的服務。對應於offer 元件資訊清單。
    • expose:元件公開的服務。對應於expose 元件資訊清單。
    • in:依元件相依的服務。對應於use 元件資訊清單。
  • fuchsia.developer.remotecontrol.RemoteControl 是屬性選取器 會在轉送路徑中與完整的 FIDL 服務名稱進行比對 與節點選取器配對的目錄

你可以視需要省略屬性選取器:core/remote-control:out 是 相當於 core/remote-control:out:*