项目中有很多开关切换的需求,比如正式服务器切换测试服务器,这个时候,我们一般在Constants里面定义一个常量isTest来判断是否是测试服务器,然后获取链接的时候判断一下,这里描述一下如何在gradle文件中配置开关。
- 在项目根目录新建config.gradle文件,用于统一管理配置
- 在项目build.gradle中引用config.gradle文件
- 在config.gradle中定义:
def http_config = [:] //定义属性集合
http_config.isTest = false //定义
ext.http_config = http_config
- 在module的build.gradle中定义:
//BuildConfig.TEST_ENV 是否是测试环境,使用此变量判断是否是正式服务器
boolean is_test = rootProject.ext.http_config.isTest
android标签内
buildTypes {
release {
buildConfigField "boolean", "TEST_ENV", is_test ? "true" : "false"
buildConfigField "boolean", "ENCRYPT_ENV", is_encrypt ? "true" : "false"
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
}
debug {
buildConfigField "boolean", "TEST_ENV", is_test ? "true" : "false"
buildConfigField "boolean", "ENCRYPT_ENV", is_encrypt ? "true" : "false"
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
}
}
- rebuild项目,就能使用Build.TEST_ENV属性判断是否是测试服务器了