ModuleMetadata

ModuleMetadata 模組包含特定裝置上模組清單的中繼資料。系統伺服器啟動後,中繼資料就會立即剖析並快取。

Android 10 的變更

ModuleMetadata APK 包含 ModuleInfoProvider,其中實作了 PackageManager API 的 getModuleInfogetInstalledModules 方法。這些方法會從模組中繼資料提供者套件剖析 XML 中繼資料,模組中繼資料套件的套件名稱會儲存在 config_defaultModuleMetadataProvider 設定值中。

模組中繼資料供應商必須包含 <application> 標記的 <metadata> 項目。中繼資料項目必須包含單一鍵 (android.content.pm.MODULE_METADATA),其值為 XML 資源的參照,該資源包含特定裝置上模組清單的中繼資料。

套件格式

ModuleMetadata 模組 (com.android.modulemetadata) 會以 APK 檔案形式提供。

中繼資料元素

XML 文件必須包含單一頂層 <module-metadata> 元素,以及一或多個子項。每個子項都是 <module> 元素,包含下列屬性:

  • name 是使用者可見的套件名稱的資源參照。 地圖會顯示前往「ModuleInfo#getName」的路徑。
  • packageName 是模組的套件名稱。對應至 ModuleInfo#getPackageName
  • isHidden 表示模組是否隱藏。地圖至 ModuleInfo#isHidden</code>.

範例:

<module-metadata>
<module name="@string/resource" packageName="package_name" isHidden="false|true">
<module .... >
</module-metadata>