Métadonnées du module

Le module ModuleMetadata contient des métadonnées sur la liste des modules sur un appareil donné. Les métadonnées sont analysées et mises en cache dès le démarrage du serveur système.

Changements dans Android 10

L'APK ModuleMetadata contient ModuleInfoProvider , qui implémente les méthodes getModuleInfo et getInstalledModules de l'API de PackageManager. Ces méthodes s'appuient sur des métadonnées XML analysées à partir d'un package de fournisseur de métadonnées de module. Le nom du package du package de métadonnées du module est stocké dans la valeur de configuration config_defaultModuleMetadataProvider .

Le fournisseur de métadonnées du module doit contenir une entrée <metadata> pour sa balise <application> . L'entrée de métadonnées doit contenir une seule clé ( android.content.pm.MODULE_METADATA ) dont la valeur est une référence à une ressource XML contenant des métadonnées sur la liste des modules sur un appareil donné.

Format du colis

Le module ModuleMetadata ( com.android.modulemetadata ) est livré sous forme de fichier APK.

Éléments de métadonnées

Le document XML doit être constitué d'un seul élément <module-metadata> de niveau supérieur avec un ou plusieurs enfants. Chaque enfant est un élément <module> qui contient les attributs suivants :

  • name est une référence de ressource à un nom de package visible par l'utilisateur. Correspond à ModuleInfo#getName .
  • packageName est le nom du package du module. Correspond à ModuleInfo#getPackageName .
  • isHidden indique si le module est masqué. Mappe vers ModuleInfo#isHidden</code>.

Exemple:

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