Il modulo ModuleMetadata contiene metadati sull'elenco dei moduli su un determinato dispositivo. I metadati vengono analizzati e memorizzati nella cache non appena viene avviato il server di sistema.
Modifiche in Android 10
L'APK ModuleMetadata contiene ModuleInfoProvider
, che
implementa i metodi getModuleInfo
e getInstalledModules
dell'API di PackageManager. Questi metodi sono supportati
dai metadati XML analizzati da un pacchetto del provider di metadati del modulo. Il nome
del pacchetto per il pacchetto di metadati del modulo è memorizzato nel
valore di configurazione config_defaultModuleMetadataProvider
.
Il provider di metadati del modulo deve contenere una voce <metadata>
per il tag <application>
. La voce dei metadati deve
contenere una singola chiave (android.content.pm.MODULE_METADATA
) il cui
valore è un riferimento a una risorsa XML che contiene metadati sull'elenco
dei moduli su un determinato dispositivo.
Formato del pacchetto
Il modulo ModuleMetadata (com.android.modulemetadata
) viene fornito
come file APK.
Elementi dei metadati
Il documento XML deve essere costituito da un unico elemento <module-metadata>
di primo livello con uno o più elementi secondari. Ogni elemento secondario è un elemento <module>
che contiene i seguenti attributi:
name
è un riferimento a una risorsa a un nome di pacchetto visibile all'utente. Mappe perModuleInfo#getName
.packageName
è il nome del pacchetto del modulo. Mappe perModuleInfo#getPackageName
.isHidden
indica se il modulo è nascosto. Mappa perModuleInfo#isHidden</code>.
Esempio:
<module-metadata>
<module name="@string/resource" packageName="package_name" isHidden="false|true">
<module .... >
</module-metadata>