场景:
打包时遇到测试环境地址和正式环境地址不一致时,手动切换可能会导致混淆
解决方案 Build Variant 创建不同配置
buildTypes创建对应版本
buildTypes {
debug {
}
release {
}
google {
}
}
}
每个版本下的参数进行配置
可创建多个参数 例如 接口域名
buildConfigField
参数类型 | 参数名称 | 参数值 |
---|---|---|
String | BaseUrl | https://test.com:3333 |
buildTypes {
debug {
buildConfigField "String", "BaseUrl", "\"https://test.com:3333\""
buildConfigField "Boolean", "isGooglePlay", "false"
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
}
release {
buildConfigField "String", "BaseUrl", "\"https://realse.com:3333\""
buildConfigField "Boolean", "isGooglePlay", "false"
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
}
google {
buildConfigField "String", "BaseUrl", "\"https://google.com:3333\""
buildConfigField "Boolean", "isGooglePlay", "true"
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
}
}
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
}
Sync后BuildConfig会出现这个参数的信息
直接使用这个BuildConfig.参数名
public static String baseUrl = BuildConfig.BaseUrl;