欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  移动技术

android 一个安装包。两个名称,两种字符串

程序员文章站 2022-06-23 08:29:50
存到清单文件

存到清单文件

        <meta-data
            android:name="privacy_policy_des"
            android:value="${privacy_policy_des}"
            tools:node="replace"/>

        <meta-data
            android:name="user_agreement_des"
            android:value="${user_agreement_des}"
            tools:node="replace"/>

 在app的Gradle中的

android 一个安装包。两个名称,两种字符串

内添加如下代码

    productFlavors.all { flavor ->

        if (name.equals("huawei") || name.equals("vivo")) {
            //修改app名字,string资源下不能包含"app_name"
            flavor.manifestPlaceholders = [
                  
                    user_agreement_des : "@string/user_agreement_des_others",
                    privacy_policy_des : "@string/privacy_policy_des_others"
            ]
        } else {
            flavor.manifestPlaceholders = [
                  
                    user_agreement_des : "@string/user_agreement_des",
                    privacy_policy_des : "@string/privacy_policy_des"
            ]

        }

    }

 

 

安卓(Android) 怎么从清单(Manifest)中获取元数据(Metadata)

package com.anguomob.camera.utlis

import android.content.Context
import android.content.pm.PackageManager

/**
 * Create by: liuan
 * Create date: 2020-10-29 0029
 * Describe:
 */
object ManifestUtils {
    fun getMetadata(context: Context, key: String?): String {
        try {
            val metaData = context.packageManager
                    .getApplicationInfo(context.packageName,
                            PackageManager.GET_META_DATA).metaData
            return metaData[key].toString()
        } catch (e: PackageManager.NameNotFoundException) {
            e.printStackTrace()
        }
        return ""
    }

    fun getPackageName(context: Context): String {
        try {
            return context.packageManager.getPackageInfo(
                    context.packageName, 0).packageName
        } catch (e: PackageManager.NameNotFoundException) {
            e.printStackTrace()
        }
        return ""
    }
}


然后就可以获取到了

上述文章好像没有讲到如何修改两个app名字

其实变量名称改一下改成APP_NAME 然后 做同样的操作就可以了 就不用使用 meta-data概念了

android 一个安装包。两个名称,两种字符串

本文地址:https://blog.csdn.net/mp624183768/article/details/109355714

相关标签: 002android