元件 ID

元件架構會使用不同的 ID 來描述元件。 本節說明下列元件之間的關係 識別碼及其用途:

  • 元件網址:指出元件是資源 以便透過元件解析器擷取
  • Monikers:識別 元件執行個體樹狀結構

元件網址

A 罩杯 元件網址 是一個網址,可用來找出 包括其宣告、程式和資產元件架構 使用元件解析器將元件網址解析為 元件宣告

用量

元件網址的主要用途是識別定義中的元件 ,做為元件執行個體的一部分:

{
    children: [
        {
            name: "logger",
            url: "fuchsia-pkg://fuchsia.com/logger#logger.cm",
        },
    ],
}

上述範例將 logger 元件宣告為絕對資源 在套件存放區代管的 Fuchsia 套件中。

元件架構也支援相對網址。

如要識別在相同套件中內建於父項元件的元件, 僅指定網址片段:

{
    children: [
        {
            name: "child",
            url: "#meta/child.cm",
        }
    ],
}

要在父項「子套件」中找出元件 元件套件,包括子套件名稱,後面加上元件 資訊清單路徑 (透過網址片段):

{
    children: [
        {
            name: "child",
            url: "child#meta/default.cm",
        }
    ],
}

相對元件網址經常用於測試,最佳做法是 在測試專用套件中將正式版元件重新封裝,以便推送 hermeticity

如要進一步瞭解元件網址語法,請參閱 元件網址參考資料

蒙尼克爾

A 罩杯 元件 moniker 這個字串可識別 元件執行個體。這項服務 遵循與 fuchsia.io 路徑類似的語意。

每個路徑元素都是父項元件指派給其子項的名稱 最後要說明「葉子元件」對應於最後一個路徑 元素。

Moniker 總是相對於特定項目:父項元件或 整個元件拓撲

用量

以下列舉幾個元件範例:

  • .:自稱路徑名稱。例如,根元件 ( 由 component_manager 啟動的第一個元件) 可經由 這隻路徑名稱其他用途則取決於情境。
  • alice/carol/sandy:專門識別元件執行個體 「沙地」做為「alice」的子系和「carol」。
  • alice/support:dan:專門識別元件執行個體「dan」 做為「support」集合來源為「alice」

Monikers 會傳送給開發人員工具,例如 ffx component explore 用於識別特定元件 安裝在目標裝置上的執行個體這類圖表也是 診斷選取器語法。

開發人員工具導入方式可幫助使用者 與目標裝置上的特定元件執行個體互動。

如需進一步瞭解元件路徑名稱語法,請參閱 component 路徑名稱

設計原則

穩定性

只要元件拓撲領先任何 並不會變更該元件

隱私權

其中可能涉及其他元件的隱私權機密資訊 執行狀態

為保留元件封裝,元件無法 判斷其他元件在自己以外執行 領域。元件無法學習自己、父項或 兄弟姊妹

系統記錄和開發人員工具的輸出內容中可能會顯示 Moniker。