A partire dal 27 marzo 2025, ti consigliamo di utilizzare android-latest-release
anziché aosp-main
per compilare e contribuire ad AOSP. Per ulteriori informazioni, vedi Modifiche ad AOSP.
ModuleMetadata
Mantieni tutto organizzato con le raccolte
Salva e classifica i contenuti in base alle tue preferenze.
Il modulo ModuleMetadata contiene i metadati relativi all'elenco dei moduli su un determinato dispositivo. I metadati vengono analizzati e memorizzati nella cache non appena viene avviato il server di sistema.
L'APK ModuleMetadata contiene ModuleInfoProvider
, che implementa i metodi getModuleInfo
e getInstalledModules
dell'API PackageManager. Questi metodi sono supportati
da 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 dei 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 contenente i metadati relativi all'elenco dei moduli su un determinato dispositivo.
Il modulo ModuleMetadata (com.android.modulemetadata
) viene fornito come file APK.
Il documento XML deve essere costituito da un singolo 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 alla risorsa di un nome del pacchetto visibile all'utente.
Corrisponde a ModuleInfo#getName
.
packageName
è il nome del pacchetto del modulo. Corrisponde a
ModuleInfo#getPackageName
.
isHidden
indica se il modulo è nascosto. Corrisponde a
ModuleInfo#isHidden</code>.
Esempio:
<module-metadata>
<module name="@string/resource" packageName="package_name" isHidden="false|true">
<module .... >
</module-metadata>
I campioni di contenuti e codice in questa pagina sono soggetti alle licenze descritte nella Licenza per i contenuti. Java e OpenJDK sono marchi o marchi registrati di Oracle e/o delle sue società consociate.
Ultimo aggiornamento 2025-07-27 UTC.
[[["Facile da capire","easyToUnderstand","thumb-up"],["Il problema è stato risolto","solvedMyProblem","thumb-up"],["Altra","otherUp","thumb-up"]],[["Mancano le informazioni di cui ho bisogno","missingTheInformationINeed","thumb-down"],["Troppo complicato/troppi passaggi","tooComplicatedTooManySteps","thumb-down"],["Obsoleti","outOfDate","thumb-down"],["Problema di traduzione","translationIssue","thumb-down"],["Problema relativo a esempi/codice","samplesCodeIssue","thumb-down"],["Altra","otherDown","thumb-down"]],["Ultimo aggiornamento 2025-07-27 UTC."],[],[],null,["# ModuleMetadata\n\nThe ModuleMetadata module contains metadata about the list of modules on a\ngiven device. The metadata is parsed and cached as soon as the system server\nstarts.\n\nChanges in Android 10\n---------------------\n\nThe ModuleMetadata APK contains `ModuleInfoProvider`, which\nimplements the `getModuleInfo` and `getInstalledModules`\nmethods from the PackageManager's API. These methods are backed\nby XML metadata parsed from a module metadata provider package. The package\nname for the module metadata package is stored in the\n`config_defaultModuleMetadataProvider` config value.\n\nThe module metadata provider must contain a `\u003cmetadata\u003e`\nentry for its `\u003capplication\u003e` tag. The metadata entry must\ncontain a single key (`android.content.pm.MODULE_METADATA`) whose\nvalue is a reference to an XML resource that contains metadata about the list\nof modules on a given device.\n\nPackage format\n--------------\n\nThe ModuleMetadata module (`com.android.modulemetadata`) is delivered\nas an APK file.\n\nMetadata elements\n-----------------\n\nThe XML document must consist of a single top level `\u003cmodule-metadata\u003e`\nelement with one or more children. Each child is a `\u003cmodule\u003e`\nelement that contains the following attributes:\n\n- `name` is a resource reference to a user-visible package name. Maps to `ModuleInfo#getName`.\n- `packageName` is the package name of the module. Maps to `ModuleInfo#getPackageName`.\n- `isHidden` indicates whether the module is hidden. Maps to `ModuleInfo#isHidden\u003c/code\u003e.`\n\nExample: \n\n \u003cmodule-metadata\u003e\n \u003cmodule name=\"@string/resource\" packageName=\"package_name\" isHidden=\"false|true\"\u003e\n \u003cmodule .... \u003e\n \u003c/module-metadata\u003e"]]