我想在BuildConfig文件中为Debug和Release构建切换String值:
def api= "\"api\"";
if (...){// What to set here to determine is build debug or not ?
api= "\"api-debug\"";
}
defaultConfig {
...
buildConfigField "String", "API", "${api}"
...
}
答案 0 :(得分:3)
您应该在buildConfigField
的范围内设置多个buildTypes
,如下所示:
android {
// ...
buildTypes {
debug {
buildConfigField "String", "API", "api-debug"
}
// ...
}
}
有关详细信息,请参阅例如this article
答案 1 :(得分:1)
您也可以通过创建单独的资源文件夹来实现此目的。但是如果你想在gradle文件中实现它,那么通过添加这些行来更新你的build.gradle
,为两个版本创建单独的字符串
android {
...
buildTypes {
release {
...
resValue "string", "api_string", "api-release\"
}
debug {
...
resValue "string", "api_string", "api-debug\"
}
}
}
添加这些行后,构建项目,您可以使用context.getString(R.string.api_string)
在java中获取字符串,但请注意,strings.xml
中的api_string
名称不应包含任何字符串。