JJD*_*JJD 3 android android-debug android-gradle-plugin retrofit
我在我的Android项目中使用Retrofit.在开发时我启用了完整的日志输出,RestAdapter
如下所示:
new RestAdapter.Builder()
.setLogLevel(RestAdapter.LogLevel.FULL);
Run Code Online (Sandbox Code Playgroud)
当我烘焙一个版本时,日志级别设置RestAdapter.LogLevel.NONE
为显而易见的原因.
我想根据构建/文件夹架构自动切换此设置:
.
??? app
? ??? src
? ??? debug
? ??? main
? ??? release
Run Code Online (Sandbox Code Playgroud)
我怎么能RestAdapter.LogLevel.FULL
进入app/src/debug
和RestAdapter.LogLevel.NONE
进入app/src/release
?
xor*_*ate 10
更好的方法是通过build.gradle
文件:
buildTypes {
debug {
buildConfigField 'retrofit.RestAdapter.LogLevel', 'RETROFIT_LOG_LEVEL', 'retrofit.RestAdapter.LogLevel.FULL'
}
release {
buildConfigField 'retrofit.RestAdapter.LogLevel', 'RETROFIT_LOG_LEVEL', 'retrofit.RestAdapter.LogLevel.NONE'
}
}
Run Code Online (Sandbox Code Playgroud)
然后在代码中执行此操作:
mRestAdapter = new RestAdapter.Builder()
.setEndpoint("http://something.com")
.setLogLevel(BuildConfig.RETROFIT_LOG_LEVEL)
.build();
Run Code Online (Sandbox Code Playgroud)
这种方式在运行时没有检查,只在编译时
最简单的方法是使用BuildConfig.DEBUG
标志,对于调试版本自动设置为true,对于版本构建自动设置为false.
我是这样做的:
RestAdapter adapter = new RestAdapter.Builder()
.setLogLevel(BuildConfig.DEBUG ? RestAdapter.LogLevel.FULL : RestAdapter.LogLevel.NONE)
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
2989 次 |
最近记录: |