[AS3.0.1]meta-data和manifestPlaceholders的使用

一篇關于meta-data的轉載記錄


  • application下

<application ... >
    <meta-data android:name="TEST_KEY" android:value="${test_key}"/>
</application>
        try {
            ApplicationInfo info = getPackageManager().getApplicationInfo(getPackageName(), PackageManager.GET_META_DATA);
            Log.e("info", info.metaData.getString("TEST_KEY"));
        } catch (PackageManager.NameNotFoundException e) {
            e.printStackTrace();
        }

  • activity下

<activity ... >
    <meta-data android:name="TEST_KEY" android:value="${test_key}"/>
</activity>
        try {
            ActivityInfo info = getPackageManager().getActivityInfo(getComponentName(), PackageManager.GET_META_DATA);
            Log.e("info", info.metaData.getString("TEST_KEY"));
        } catch (PackageManager.NameNotFoundException e) {
            e.printStackTrace();
        }

  • service下

<service ... >
    <meta-data android:name="TEST_KEY" android:value="${test_key}"/>
</service>
        try {
            ServiceInfo info = getPackageManager().getServiceInfo(getComponentName(), PackageManager.GET_META_DATA);
            Log.e("info", info.metaData.getString("TEST_KEY"));
        } catch (PackageManager.NameNotFoundException e) {
            e.printStackTrace();
        }

  • receiver下

<receiver ... >
    <meta-data android:name="TEST_KEY" android:value="${test_key}"/>
</receiver>
        try {
            ActivityInfo info = getPackageManager().getReceiverInfo(getComponentName(), PackageManager.GET_META_DATA);
            Log.e("info", info.metaData.getString("TEST_KEY"));
        } catch (PackageManager.NameNotFoundException e) {
            e.printStackTrace();
        }

manifestPlaceholders使用

在build.gradle的多版本中設置

            manifestPlaceholders = ["test_key": "修改的內容"]

好比如下

    productFlavors{
        dev{
            manifestPlaceholders = ["test_key": "測試版key"]
        }
        free{
            applicationIdSuffix ".free"
            manifestPlaceholders = ["test_key": "Free版key"]
        }
    }

效果如下


測試
Free

資料

Android獲取Manifest中<meta-data>元素的值

使用 gradle 在編譯時動態(tài)設置 Android resValue / BuildConfig / Manifes中<meta-data>變量的值

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

友情鏈接更多精彩內容