在开发时,我们经常需要进行 Debug 和 Release 环境的切换,包括 log 输出,请求的服务器地址等的更换,BuildConfig.DEBUG 将非常的有用,它将根据构建时的类型自动返回 true 或 false,使得我们不需要手动进行配置。
示例代码
// 在 Debug 模式下输出日志
if (BuildConfig.DEBUG) {
Log.d(TAG, "some thing");
}
// 设置请求地址
String SERVICE_URL = BuildConfig.DEBUG ? "debug url" : "release url";
在 module 中使用时注意
因为 module 默认输出是 release 的,所以需要特别配置,否则 BuildConfig.DEBUG 将永远返回 false。
配置 module gradle
android {
publishNonDefault true
}
配置 app gradle
dependencies {
releaseCompile project(path: ':library', configuration: 'release')
debugCompile project(path: ':library', configuration: 'debug')
}
在配置好这些之后,在Android studio中点 run app 或着 Build Apk时BuildConfig.DEBUG值为true,而 Generate Signed Apk 生成的apk代码运行时BuildConfig.DEBUG值为false。
网友评论