ModuleMetadata

ModuleMetadata modülü, belirli bir cihazdaki modül listesiyle ilgili meta verileri içerir. Meta veriler, sistem sunucusu başlatılır başlatılmaz ayrıştırılır ve önbelleğe alınır.

Android 10'daki değişiklikler

ModuleMetadata APK'sı, PackageManager'ın API'sindeki getModuleInfo ve getInstalledModules yöntemlerini uygulayan ModuleInfoProvider içerir. Bu yöntemler, bir modül meta veri sağlayıcı paketinden ayrıştırılan XML meta verileriyle desteklenir. Modül meta veri paketinin paket adı, config_defaultModuleMetadataProvider yapılandırma değerinde saklanır.

Modül meta veri sağlayıcısı, <metadata> etiketi için <application> girişi içermelidir. Meta veri girişi, değeri belirli bir cihazdaki modül listesiyle ilgili meta verileri içeren bir XML kaynağına referans olan tek bir anahtar (android.content.pm.MODULE_METADATA) içermelidir.

Paket biçimi

ModuleMetadata modülü (com.android.modulemetadata) APK dosyası olarak sunulur.

Meta veri öğeleri

XML dokümanı, bir veya daha fazla alt öğe içeren tek bir üst düzey <module-metadata> öğesinden oluşmalıdır. Her alt öğe, aşağıdaki özellikleri içeren bir <module> öğesidir:

  • name, kullanıcı tarafından görülebilen bir paket adına yönelik kaynak referansıdır. ModuleInfo#getName ile eşleşir.
  • packageName, modülün paket adıdır. Şununla eşleşir: ModuleInfo#getPackageName.
  • isHidden, modülün gizli olup olmadığını gösterir. Şununla eşleşir: ModuleInfo#isHidden</code>.

Örnek:

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