Be Careful With BuildConfig.DEBUG】的更多相关文章

Be Careful With BuildConfig.DEBUG http://www.digipom.com/be-careful-with-buildconfig-debug/…
ADT(r17)中添加了一个新功能可以允许开发者只在Debug模式下允许某些代码.Build系统生成一个名称为BuildConfig的类,该类包含一个DEBUG 常量,该常量会根据您的Build类型自动设置值.您可以通过(BuildConfig.DEBUG) 常量来编写只在Debug模式下运行的代码. 如果有些代码不想在发布后执行,就可以使用该功能. 比如调试日志,你不想在软件发布后被其他开发者看到,过去的方式是你设置一个全局变量,标记软件为DEBUG模式还是发布模式. public stati…
      在日常开发中,我们使用android.util.Log来打印日志,方便我们的开发调试.但是在打包发布时,需要手工把Log关闭,多少会有些不便,而且不排除打包者忘记关闭Log的情况.那么有没有更好的方法来帮助开发者解决这个问题?       ADT(r17)发布以后,Google为我们提供了一种新的调试机制,即BuildConfig.DEBUG.       ADT 17.0.0的New build features第二条如下描述:       Added a feature that…
在Android开发中,我们使用android.util.Log来打印日志,方便我们的开发调试.但是这些代码不想在发布后执行,我们并不想在软件发布后调试日志被其他开发者看到,现在我的方法是设置一个全局变量,标记软件为Debug模式还是Release模式.来看下代码: public class Log { private static final boolean DEBUG = true; public static void i(String tag, String msg) { if (DEB…
app模块引用了library,在library模块中控制日志输出使用的是 if (BuildConfig.DEBUG) { logger.d("print %s", msg); } 通常,在直接运行app即使用debug模式打包时, BuildConfig.DEBUG 应为true,而当发布release版本时, BuildConfig.DEBUG 自动为false.这样就可以完美地控制日志的输出. 但是,令人头疼的是,无论是debug还是release,library中的 Buil…
Android 开发中一般会通过 BuildConfig.DEBUG 判断是否是 Debug 模式,从而做一些在 Debug 模式才开启的特殊操作,比如打印日志.这样好处是不用在发布前去主动修改,因为这个值在 Debug 模式下为 true,Release 模式下为 false. 1. 问题 如果应用只有一个 Module 没有问题,Debug 模式下 BuildConfig.DEBUG 会始终为 false.如果现在有两个 Module,分别为 App 和 Lib,且 App 依赖 Lib,在…
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…
Android 开发中一般会通过 BuildConfig.DEBUG 判断是否是 Debug 模式,从而做一些在 Debug 模式才开启的特殊操作,比如打印日志.这样好处是不用在发布前去主动修改,因为这个值在 Debug 模式下为 true,Release 模式下为 false. 1. 问题 如果应用只有一个 Module 没有问题,Debug 模式下 BuildConfig.DEBUG 会始终为 false.如果现在有两个 Module,分别为 App 和 Lib,且 App 依赖 Lib,在…
我们经常在debug模式下使用一些性能检测工具,例如blockCannary,leakCannary.Stetho等,但是我们release的时候又不需要这些检测工具,通常情况下我们的做法是在build.gradle中写上debugImplementation “xxx.xxx.xxx.xxx”这样代码里写入BuildConfig.DEBUG来实现是否调用相关方法,但是发release版本的时候没有引入这些类又会报错,所以只能手动去注释掉代码.这是何等的麻烦. 因此我们需要一些其他的方法来解决这…
https://blog.csdn.net/lvxiangan/article/details/71601451 Android Studio开发中,把一个module输出打包为jar文件,我们会发现里面多了一个BuildConfig类,但在整个开发过程中我们始终没有写过这个类,这是怎么回事呢? 原来,BuildConfig类是一个根据build.gradle配置文件自动生成的类,有点类似于R.class,生成后不能修改.它具备以下特点: 1.该类位置在applicationId(应用包名)下面…