Java 如何使用改型构建两个构建android变体来获取两个不同的URL?
我正在开发一个android应用程序,用于为共享同一数据源的两个不同构建变量获取两个不同的RESTAPI。我正在使用product flavor作为构建变体。但我不知道如何配置改装部分,以便为不同的构建变量选择不同的APIJava 如何使用改型构建两个构建android变体来获取两个不同的URL?,java,android,retrofit,retrofit2,build-variant,Java,Android,Retrofit,Retrofit2,Build Variant,我正在开发一个android应用程序,用于为共享同一数据源的两个不同构建变量获取两个不同的RESTAPI。我正在使用product flavor作为构建变体。但我不知道如何配置改装部分,以便为不同的构建变量选择不同的API 提前感谢您发布的调试版本,您可以使用 // setting up retrofit .baseUrl(if (BuildConfig.DEBUG) { "https://debug.server" } e
提前感谢您发布的调试版本,您可以使用
// setting up retrofit
.baseUrl(if (BuildConfig.DEBUG) {
"https://debug.server"
} else {
"https://release.server"
})
至于味道,你可以试试
// setting up retrofit
.baseUrl(if (BuildConfig.FLAVOR == "test") {
"https://debug.server"
} else if(BuildConfig.FLAVOR == "staging"){
"https://staging.server"
} else {
"https://release.server"
})
您可以创建一个基于您的产品风格向API客户端提供不同的REST API URL:
打开你的build.gradle(应用程序级)文件,并将以下行添加到你的android块中:
android {
....
applicationVariants.all { variant ->
def variantName = variant.flavorName
// replace your specific flavor here instead of 'flavor1' & 'flavor2'
if (variantName.contains("flavor1")) {
variant.buildConfigField 'String', "SERVER_URL", '"your_flavor_specific_url_here"'
} else if (name.contains("flavor2")) {
variant.buildConfigField 'String', "SERVER_URL", '"your_flavor_specific_url_here"'
}
}
....
}
现在重建您的项目,然后您可以访问项目中的BuildConfig.SERVER\u URL
,这将根据您选择的产品风格而有所不同。可能的重复项