android中的BuildConfig
来源:互联网 发布:windows搜索索引 编辑:程序博客网 时间:2024/05/29 03:21
原文链接:http://blog.csdn.net/pony_maggie/article/details/51984819
版本:Android stuido 2.2
什么是BuildConfig
BuildConfig其实是个Java类,在我们编译android工程时它自动生成。类的实现基本是下面这样的:
public final class BuildConfig{ public BuildConfig() { } public static final boolean DEBUG = false; public static final String APPLICATION_ID = "com.example.mylibrary"; public static final String BUILD_TYPE = "release"; public static final String FLAVOR = ""; public static final int VERSION_CODE = 1; public static final String VERSION_NAME = "1.0";}
这个类的源码一般在
app\build\generated\source\buildConfig\debug\包名…
BuildConfig的作用
BuildConfig最常用的功能应该作为日志开关。大部分时候我们希望程序在debug模式下可以输出日志,而release时不输出。
官方文档有这样一段话:
Added a feature that allows you to run some code only in debug mode. Builds now generate a class called BuildConfig containing a DEBUGconstant that is automatically set according to your build type. You can check the (BuildConfig.DEBUG) constant in your code to run debug-only functions.
当然实现这种功能方法很多,我们完全可以自己实现一个MyLogUtil类增加一个开关变量来控制,比如;
public class MyLogUtil { private static final boolean DEBUG = true; public static void i(String tag, String msg) { if (DEBUG) android.util.Log.i(tag, msg); } public static void e(String tag, String msg) { if (DEBUG) android.util.Log.e(tag, msg); } //....}
在程序发布时把DEBUG变量改为false即可。但是这样其实不太方便,还要手动改代码,万一忘记了呢??
BuildConfig中的DEBUG字段会根据当前工程设置的编译选择自动的赋值,省去了手动改的麻烦,所以我们的程序变为这样:
if (BuildConfig.DEBUG) { Log.d("", "I am a debug");} else { Log.d("", "I am a release!");}
后计
我自己封了个jar包,然后被别的app调用,发现jar包里的buildconfig.debug总是false。一直未解决。后来还是决定用一个DEBUG成员变量来控制了。
- 关于android中的BuildConfig
- android中的BuildConfig
- BuildConfig:Android BuildConfig.DEBUG的妙用
- Android BuildConfig文件
- android的BuildConfig学习
- Android BuildConfig类
- Android BuildConfig.DEBUG的妙用
- Android BuildConfig.DEBUG的使用
- Android BuildConfig.DEBUG的妙用
- android BuildConfig Debug的妙用
- Android Gradle BuildConfig的妙用
- android BuildConfig.DEBUG的妙用
- Android Studio之BuildConfig类
- Android BuildConfig.DEBUG的妙用
- ANDROID BUILDCONFIG.DEBUG的妙用
- Android Studio之BuildConfig类
- Android:Failed to create BuildConfig class
- android中BuildConfig.DEBUG的使用
- 素数,杭电蓝桥杯模拟测试
- 《FreeSWITCH: VoIP实战》:SIP 模块
- design patterns
- 史上最全最强SpringMVC详细分享
- centos7安装mysql
- android中的BuildConfig
- 491. Increasing Subsequences
- python第20篇之--元组的使用
- 解决 Android N 7.0 上 报错:android.os.FileUriExposedException
- 求一组整数的第二大数
- 分布式
- 使用 keepalived 设置虚拟 IP 环境
- 对House Robber问题的探究
- 动作事件的监听演示代码