10
votes

Obtenez ActivityInfo MetaData dans la méthode Oncreate

J'ai besoin de récupérer une valeur du fichier androidmanifest.xml , stocké sous forme de métadonnées: xxx

dans le Oncreate Méthode, j'appelle la méthode suivante: xxx

mais le métadata est toujours null. Est-il impossible d'accéder au métadata dans la méthode ongreate ? I.e. L'activité n'a pas encore été entièrement initialisée.


0 commentaires

3 Réponses :


25
votes

Vous devrez utiliser les indicateurs get_activités code> et get_meta_data ​​code>.

ActivityInfo ai = getPackageManager()
        .getActivityInfo(this.getComponentName(), PackageManager.GET_META_DATA);


1 commentaires

Merci, cela a aidé. Vous avez une faute de frappe, devrait être: ActivityInfo app = getpackagemanager (). GetactivityInfo (this.getComponentName (), Packagemanager.get_activités | Packagemanager.get_meta_Data);



1
votes

Si vous êtes intéressé, Android-MetaData est un cadre qui facilite la possibilité d'obtenir des métadonnées de la Manifeste Android. La façon dont vous obtiendriez les méta-données ci-dessus en utilisant Android-Metadata est:

int val = ManifestMetadata.get (context).getValue ("myInterestingValue", Integer.class);


1 commentaires

Est-ce fusible dans Androidannotations ( GITUB.COM/EXCILYS/ADROIDROIDATINATIONS )?



1
votes

J'ai essayé la réponse de Jasonj, mais cela ne fonctionne pas. Pour récupérer les méta-données du fichier manifeste, je dois obtenir le code suivant xxx

ou la version kotlin: xxx


1 commentaires

GetApplicationInfo est utilisé pour obtenir des métadonnées à partir de l'élément . Pour obtenir des méta-données de élément, vous devez utiliser GetactivityIfo comme décrit