Metadane modułu

Moduł ModuleMetadata zawiera metadane dotyczące listy modułów na danym urządzeniu. Metadane są analizowane i buforowane natychmiast po uruchomieniu serwera systemowego.

Zmiany w Androidzie 10

Pakiet ModuleMetadata APK zawiera ModuleInfoProvider , który implementuje metody getModuleInfo i getInstalledModules z interfejsu API PackageManager. Metody te są obsługiwane przez metadane XML analizowane z pakietu dostawcy metadanych modułu. Nazwa pakietu metadanych modułu jest przechowywana w wartości konfiguracyjnej config_defaultModuleMetadataProvider .

Dostawca metadanych modułu musi zawierać wpis <metadata> dla swojego znacznika <application> . Wpis metadanych musi zawierać pojedynczy klucz ( android.content.pm.MODULE_METADATA ), którego wartość stanowi odwołanie do zasobu XML zawierającego metadane dotyczące listy modułów na danym urządzeniu.

Format pakietu

Moduł ModuleMetadata ( com.android.modulemetadata ) jest dostarczany jako plik APK.

Elementy metadanych

Dokument XML musi składać się z pojedynczego elementu <module-metadata> najwyższego poziomu z jednym lub większą liczbą elementów podrzędnych. Każde dziecko jest elementem <module> , który zawiera następujące atrybuty:

  • name jest odniesieniem do zasobu widocznej dla użytkownika nazwy pakietu. Mapuje do ModuleInfo#getName .
  • packageName to nazwa pakietu modułu. Mapuje do ModuleInfo#getPackageName .
  • isHidden wskazuje, czy moduł jest ukryty. Mapuje do ModuleInfo#isHidden</code>.

Przykład:

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