在生产和调试的时候 需要切换服务器地址,但是用了 rxjava之后 ,url的赋值必须是常量不能动态赋值。基于这种情况,考虑在build.gradle中配置服务器url
在app的module中定义buildType 然后定义 debug 和release
代码例子
buildTypes {
release {
minifyEnabled true
proguardFile 'proguard.pro'
signingConfig signingConfigs.release
buildConfigField('String', 'SERVER_URL', '"https://app.xxxx.cn/venus/"')
buildConfigField('String', 'MESSAGE_URL', '"https://rabbitmq.bbbb.cn"')
buildConfigField('int', 'MESSAGE_URL_PORT', '5672')
}
debug {
signingConfig signingConfigs.degbug
buildConfigField('String', 'PHP_DATA_URL', '"https://app.bbbb.cn/venus/"')
buildConfigField('String', 'MESSAGE_URL', '"https://rabbitmq.xxxx.cn"')
buildConfigField('int', 'MESSAGE_URL_PORT', '5672')
}
}
然后build一下,会自动生成 BuildConfig.java 文件
然后再java类中就可以直接赋值
需要切换url的时候只要 再Build Variants中切换就行,非常方便。