我们一般要在AndroidManifest.xml文件中定义三方平台的appkey,appid等属性值,类似下面的代码
如果属性值是固定死的还好,如果属性值要根据debug和release模式区分,那么你就得打debug包的时候改成debug的appkey,打release包的时候改成release包的appkey,这样做是非常麻烦的。
解决办法分为三步
1 AndroidManifest.xml中写死属性值的地方可以使用“${*}”代替
2 app的build.gradle文件定义一下参数
android {
......................
defaultConfig {
......................
manifestPlaceholders = [
GETUI_APP_ID : "",
GETUI_APP_KEY : "",
GETUI_APP_SECRET: ""
]
}
如上图所示,你需要几个参数就要定义几个
2 app的build.gradle的buildTypes 中定义各种属性的值
buildTypes {
release {
manifestPlaceholders = [GETUI_APP_ID : "正式appid", GETUI_APP_KEY: "正式key", GETUI_APP_SECRET: "正式srcrest",
.............................
}
debug {
manifestPlaceholders = [GETUI_APP_ID : "测试appid", GETUI_APP_KEY: "测试key", GETUI_APP_SECRET: "测试secret"
.............................
}
}
经过这几步,你打包的时候就不用修改这些渠道的参数了,debug包就会自动去使用debug参数,release包就会自动使用release包