ModuleMetadata

El módulo ModuleMetadata contiene metadatos sobre la lista de módulos en un dispositivo determinado. Los metadatos se analizan y almacenan en caché cuando el servidor del sistema comienza el ciclo de vida.

Cambios en Android 10

El APK de ModuleMetadata contiene ModuleInfoProvider, que implementa getModuleInfo y getInstalledModules. de la API de PackageManager. Estos métodos están respaldados por metadatos XML analizados desde un paquete de proveedor de metadatos de módulo. El paquete para el paquete de metadatos del módulo se almacena Valor de configuración de config_defaultModuleMetadataProvider.

El proveedor de metadatos del módulo debe contener una entrada <metadata> para su etiqueta <application>. La entrada de metadatos debe contienen una sola clave (android.content.pm.MODULE_METADATA) cuyo El valor es una referencia a un recurso XML que contiene metadatos sobre la lista. de módulos en un dispositivo determinado.

Formato del paquete

Se envió el módulo ModuleMetadata (com.android.modulemetadata) como un archivo APK.

Elementos de metadatos

El documento en formato XML debe constar de un único <module-metadata> de nivel superior con uno o más elementos secundarios. Cada elemento secundario es un elemento <module> que contiene los siguientes atributos:

  • name es una referencia de recurso a un nombre de paquete visible para el usuario. Se asigna a ModuleInfo#getName.
  • packageName es el nombre del paquete del módulo. Se asigna a ModuleInfo#getPackageName
  • isHidden indica si el módulo está oculto. Se asigna a ModuleInfo#isHidden</code>.

Ejemplo:

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