Android gradle 将 ext 属性 自动 添加到 BuildConfig
程序员文章站
2022-05-31 20:26:18
...
编写 config.gradle 文件,里面是自己定义的app配置属性
在项目module 的 build.gradle 里引入刚才写的 gradle 文件
在module 的 build.gradle 里 defaultConfig 块里 添加
android {
compileSdkVersion 27
defaultConfig {
... ...
minSdkVersion 21
targetSdkVersion 26
versionCode 100
versionName 1.0.0
addBuildConfigFields(defaultConfig)
... ...
}
... ...
}
@SuppressWarnings("GrMethodMayBeStatic")
def addBuildConfigFields(DefaultConfig config) {
ext.properties.each {
it ->
if (it.value instanceof Map) {
it.value.each {
map -> config.buildConfigField "String", "${map.key}", "\"${map.value}\""
}
} else if (!it.key.contains(".")) {
config.buildConfigField "String", "${it.key}", "\"${it.value}\""
}
}
}
最后 sync project ,就可以在 app/build/generated/source/buildConfig/debug/BuildConfig.java 中 看到 config.grad 添加的属性了