ffx 提供統一平台,方便主機目標互動使用 Fuchsia CLI 工具。這個介面以服務為導向,可讓使用者對一或多個 Fuchsia 目標裝置執行許多常見的開發和整合工作流程作業。
這項工具既是服務執行階段,也是公用程式的集合,適用於使用者和基礎架構整合人員。
使用者入門指南
請先參閱 ffx 工具的使用手冊。
開發人員入門指南
擴充或新增 ffx 的子工具時,請務必考量下列事項:
ffx是以 Rust 開發,並大量使用 Rust Crate。不過,Crate 必須託管在 Fuchsia 平台來源樹狀結構中。Open Source Review Board (OSRB) 程序文件會詳細說明這個程序。查看third_party/rust_crates中的現有 Crate。擴充
ffx時,請執行ffx help檢視現有的指令介面,瞭解新指令或工具的適用位置。擴充現有指令時,請考慮新增旗標或選項。不過,如果沒有啟用整體工作流程,請考慮使用新指令或更高層級的子群組。
請考量依附元件,例如工具依附的 FIDL 服務、本機檔案系統項目、目標檔案系統路徑,或任何資訊清單/資訊清單格式。
請考慮指令與多部裝置的互動方式。
ffx提供全域--target,可明確宣告要與哪個裝置互動。指令是否需要存取設定,或依附於特定建構環境?如果是,請善用
ffx中的各種設定,或為特定指令或工作流程定義新設定。現有設定可透過ffx config get存取。
如需詳細指南和範例,請參閱「為 FFX 開發」。
CLI
指令列介面 (CLI) 提供 ffx 的使用者體驗。
負責事項:
- 剖析使用者參數 (CLI 參數)
- 與 Daemon 通訊 (視需要啟動 Daemon)
- 將剖析的參數和要求的 FIDL Proxy 轉送至適當的程式碼路徑,以供執行
Daemon
這個精靈會在主機裝置上於背景執行,並管理下列項目:
- 目標探索
- 目標生命週期管理 (刷機、佈建及套件服務)
- 方便與目標裝置通訊
遙控服務
遠端控制服務會在目標裝置上執行,負責提供目標裝置上執行的 FIDL 服務存取權。
FDomain
FDomain 是一種機制,可讓開發主體機器與 Fuchsia 目標裝置上的 FIDL 服務通訊。這項通訊協定是為了取代 Overnet 而設計,詳情請參閱 FDomain 總覽。