Android Gradle BuildConfig的妙用

来源:互联网 发布:淘宝运营提成比例 编辑:程序博客网 时间:2024/06/04 19:03
  • 首先我们看看buildconfig在哪个目录下,一个是debug环境,另一个是当你打包apk才会生成
    的release正式环境的buildconfig,我这里是为了比对,都生成出来了。
    buildconfig路径

debug环境下的buildconfig

/** * Automatically generated file. DO NOT MODIFY * 已经说明了这个文件是自动生成的,不要去改变它 */package com.simple.buildconfidemo;public final class BuildConfig {  //是否为debug模式  public static final boolean DEBUG = Boolean.parseBoolean("true");  //应用标识id,也可以理解为包名  public static final String APPLICATION_ID = "com.simple.buildconfidemo";  //构建的类型,等会看release环境下的就会豁然开朗的  public static final String BUILD_TYPE = "debug";  //这个还没用到过,暂时不知道  public static final String FLAVOR = "";  //版本号  public static final int VERSION_CODE = 1;  //版本名  public static final String VERSION_NAME = "1.0";}

release环境下的buildconfig

  • 对照看上面debug的,就会发现不同之处
/** * Automatically generated file. DO NOT MODIFY */package com.simple.buildconfidemo;public final class BuildConfig {  public static final boolean DEBUG = false;  public static final String APPLICATION_ID = "com.simple.buildconfidemo";  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";}
  • 我们分别运行不同环境下的apk,在程序入口处打上log
Log.d("simple",BuildConfig.BUILD_TYPE);

release正式环境

这里写图片描述

debug测试环境

这里写图片描述

  • 可以看到不同环境打出的builde_type是不一样,用BuildConfig.DEBUG当然也是一样的道理,这里只是为了打出的log便于理解,所以就可以在程序中需要判断是测试环境还是正式环境的地方做判断啦,是不是瞬间 又get了一项新技能,这样就不用自己在代码中做修改了,如果每次打正式环境的包就要去修改很多东西, 很容易有疏漏的地方,别问我为什么知道!!!现在你只需要安心的打包就好了!

其实buildconfig的节点都是来自gradle中的节点,之后还会讲到buildconfig自定义节点的延伸类容,
简直好用得不要不要的。

android {    compileSdkVersion 23    buildToolsVersion "23.0.2"    defaultConfig {        applicationId "com.simple.buildconfidemo"        minSdkVersion 9        targetSdkVersion 23        versionCode 1        versionName "1.0"    }    buildTypes {        release {            minifyEnabled false            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'        }    }}
0 0
原创粉丝点击