que necesito para recuperar un valor del archivo AndroidManifest.xml
, almacenada como metadatos:consigo ActivityInfo metadatos en el método onCreate
<meta-data android:value="3" android:name="myInterestingValue" />
En el método onCreate
, que llamo el método siguiente:
private Object getMetaData(String name) {
try {
ActivityInfo ai = getPackageManager().getActivityInfo(this.getComponentName(), PackageManager.GET_META_DATA);
Bundle metaData = ai.metaData;
if(metaData == null) {
debug("metaData is null. Unable to get meta data for " + name);
}
else {
Object value = (Object)metaData.get(name);
return value;
}
} catch (NameNotFoundException e) {
e.printStackTrace();
}
return null;
}
Pero el metaData
siempre es nulo. ¿Es imposible acceder al metaData
en el método onCreate
? es decir, la actividad aún no se ha inicializado por completo.
Gracias, esto ayudó. Tiene un error tipográfico, debe ser: ActivityInfo app = getPackageManager(). GetActivityInfo (this.getComponentName(), PackageManager.GET_ACTIVITIES | PackageManager.GET_META_DATA); – ajh158