簡體   English   中英

如何從AndroidManifest.xml獲取大量的元數據標簽

[英]How to get a long number of metadata tags from AndroidManifest.xml

我想從元數據標簽中得到一個刺痛,但是我不能使用metadata.getString(),因為它返回null。 因此,我使用metadata.getInt(),但是我無法獲得正確的值。 我該怎么做? <meta-data android:name="GDT_BANNER_POST_ID" android:value="9079537218417626401"/>

用這個 :

ActivityInfo app = getPackageManager().getActivityInfo(this.getComponentName(), PackageManager.GET_ACTIVITIES|PackageManager.GET_META_DATA);
Bundle bundle = ai.metaData;
Object value = (Object)metaData.get(name);

使用一種方法,例如:

    private String retrieveKey(Context aContext, String aKey) {

    // get the key from the manifest 
    final PackageManager pm = aContext.getPackageManager();
    try { 
        final ApplicationInfo info = pm.getApplicationInfo(aContext.getPackageName(),
                PackageManager.GET_META_DATA);
        if (info.metaData == null) {
            Log.i("Key not found in manifest", aKey);
        } else { 
            final String value = String.valueOf(info.metaData.get(aKey));
            if (value == null) {
                Log.i("Key not found in manifest", aKey);
            } else { 
                return value.trim();
            } 
        } 
    } catch (final PackageManager.NameNotFoundException e) {
        Log.i("Key not found in manifest", aKey);
    } 
    return ""; 
} 

在清單中,添加:

<meta-data
            android:name="MY_KEY"
            android:value="MY_VALUES" />

在您的代碼中,只需對其進行檢索:

String myKey = retrieveKey(this, "MY_KEY");

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM