Android开发之修改Manifest中meta-data的数据

同类型参考链接:

1,AndroidManifest中meta-data动态修改的问题_今人不见古时月,今月曾经照古人的博客-CSDN博客

2,AndroidManifest.xml中的meta-data标签、gradle中的manifestPlaceholder的应用_今人不见古时月,今月曾经照古人的博客-CSDN博客

  • 解决问题:代码动态修改Manifest.xml 中 meta-data 的配置数据。例如:高德key
  • 代码
    private void initFMMap() {
        ApplicationInfo appInfo = null;
        try {
            appInfo = this.getPackageManager().getApplicationInfo(getPackageName(), PackageManager.GET_META_DATA);
        } catch (PackageManager.NameNotFoundException e) {
            e.printStackTrace();
        }
        String msg = appInfo.metaData.getString("com.fengmap.mapapi.appkey");
        Log.e(TAG, "before: " + msg);

        appInfo.metaData.putString("com.fengmap.mapapi.appkey", "b22ac5888df02143841ce28817f41942aaa");

        msg = appInfo.metaData.getString("com.fengmap.mapapi.appkey");
        Log.e(TAG, "after: " + msg);
    }
  • 结果

注意:

该修改方式只会针对同一个类文件,如果更换类文件再次读取mete-date时,数据将会恢复成Manifest.xml中配置的数据。

转载于:https://www.cnblogs.com/coderwjq/p/7132485.html

猜你喜欢

转载自blog.csdn.net/weixin_42602900/article/details/125659526