android 一个安装包。两个名称,两种字符串
- 作者: 汪_辉煌
- 来源: 51数据库
- 2021-08-20
存到清单文件
<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中的
内添加如下代码
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中Bitmap用法(显示,保存,缩放,旋转)实例分析
12
android 仿微信聊天气泡效果实现思路
1
Android的尺度,drawable-xxxxxxx
2
Codeforces Round #656 (Div. 3) (C、D题)
1
Android之handler异步消息处理机制解析
6
GridView中图片显示出现上下间距过大,左右图片显示类似瀑布流的问题
0
AsyncTask的简单使用
5
两个简单Fragment之间的通信(三种方式)
18
uboot修改设置boot参数命令
41
android中实现从相册中一次性获取多张图片与拍照,并将选中的图片显示出来
2