通过AS中BuildConfig.DEBUG字段用来自定义调试Log
来源:互联网 发布:物流软件系统 编辑:程序博客网 时间:2024/06/03 19:30
BuildConfig.DEBUG
首先在Gradle脚本中默认的debug和release两种模式BuildCondig.DEBUG字段分别为true和false,而且不可更改。该字段编译后自动生成,在Studio中生成的目录在app/build/source/BuildConfig/Build Varients/package name/BuildConfig 文件下。我们以9GAG为例来看下release模式下该文件的内容:
public final class BuildConfig { public static final boolean DEBUG = false; //... public static final boolean IS_SHOW_DEBUG
= false;}
自定义BuildConfig字段
大家看到上述内容的时候发现莫名的有个IS_SHOW_DEBUG字段,这个完全是我自定义的一个字段,我来用它控制Log的输出,而没有选择用默认的DEBUG字段。举例一个场景,我们在App开发用到的api环境假设可能会有测试、正式环境,我们不可能所有的控制都通过DEBUG字段来控制,而且有时候环境复杂可能还会有两个以上的环境,这个时候就用到了Gradle提供了自定义BuildConfig字段,我们在程序中通过这个字段就可以配置我们不同的开发环境:
在app的build.gradle配置如下:
buildTypes { release { minifyEnabled false buildConfigField "boolean", "IS_SHOW_LOG", NOT_SHOW_LOG proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' } debug { minifyEnabled false buildConfigField "boolean", "IS_SHOW_LOG", SHOW_LOG } preview { minifyEnabled false buildConfigField "boolean", "IS_SHOW_LOG", SHOW_LOG } }其中SHOW_LOG和NOT_SHOW_LOG在gradle.properties中声明:
org.gradle.jvmargs=-Xmx1024mSHOW_LOG trueNOT_SHOW_LOG false点击项目重新build一下,下面就可以写app你想要的日志输出了:
public class MyLog { public static int i(String tag, String msg) { if (BuildConfig.IS_SHOW_LOG) { return Log.i(tag, msg); } else { return -1; } } public static int i(String tag, String msg, Throwable tr) { if (BuildConfig.IS_SHOW_LOG) { return Log.i(tag, msg, tr); } else { return -1; } } public static int v(String tag, String msg) { if (BuildConfig.IS_SHOW_LOG) { return Log.v(tag, msg); } else { return -1; } } public static int v(String tag, String msg, Throwable tr) { if (BuildConfig.IS_SHOW_LOG) { return Log.v(tag, msg, tr); } else { return -1; } } //等等其他你想打印的方法.... }
阅读全文
0 0
- 通过AS中BuildConfig.DEBUG字段用来自定义调试Log
- 安卓Studio学习笔记---gradle自定义BuildConfig.DEBUG实现在调试输出Log,正式的时候不输出Log
- BuildConfig 中 DEBUG的作用
- BuildConfig自定义字段在debug模式和release版本的使用
- BuildConfig.DEBUG
- BuildConfig.DEBUG
- Eclipse AS使用随记 - Android BuildConfig.DEBUG模式运用
- android Log控制小技巧--BuildConfig.DEBUG的使用
- android中BuildConfig.DEBUG的使用
- Android开发中BuildConfig.DEBUG的使用
- android中BuildConfig.DEBUG的使用
- android中BuildConfig.DEBUG的使用
- android中BuildConfig.DEBUG的使用
- AS的Debug调试
- Gradle构建控制Log开关——BuildConfig\自定义
- AS Debug调试总结推荐
- Swift中如何实现自定义Debug模式下打印Log
- ADT debug as native application error log
- 应用mavlink通信协议的四轴offboard地面站(上位机)
- 运算符重载
- WGS84、GCJ02、BD09各坐标系之间的转换算法
- kafka 新手入门
- RabbitMQ的配置文件
- 通过AS中BuildConfig.DEBUG字段用来自定义调试Log
- 有关获取SQLserver几个方法
- win32 IDT HOOK
- Android开发之图片加载~初识Glide
- pdo 防止sql 注入原理
- Turtlebot_navigation
- Vim技能修炼教程(1)-使用vundle管理插件
- 队列和栈
- 针对不同浏览器预览上传文件的处理方式