Gradle 自定义构建全局变量

在ADT17之后,出现了一个非常有意思的类,伴随着apk中:

Gradle 自定义构建全局变量_第1张图片

其中的内容如下:

 

/**
 * Automatically generated file. DO NOT MODIFY
 */
package com.xuan.kotlinapp;

public final class BuildConfig {
  public static final boolean DEBUG = Boolean.parseBoolean("true");
  public static final String APPLICATION_ID = "com.xuan.kotlinapp";
  public static final String BUILD_TYPE = "debug";
  public static final String FLAVOR = "GooglePlay";
  public static final int VERSION_CODE = 1;
  public static final String VERSION_NAME = "1.0";
  // Fields from build type: debug
  public static final boolean api_version = true;
}

 

当然我们可以自定义变量,这样根据工具打不同模式[debug][release]版本的apk时,自动就会赋予相应的值:

语法:buildConfigFiled “变量类型" ,"变量名称","变量值"

也可以加括号 如: buildConfigField("int","BuildType","1")

在这里我演示一个自定义全局整形的变量

Gradle 自定义构建全局变量_第2张图片

然后点击工具栏Build->Build Apk ,这样就会默认生成debug版本的BuildConfig全局变量

Gradle 自定义构建全局变量_第3张图片

 

当你在打包release版本apk时,也会release配置中的变量值:

Gradle 自定义构建全局变量_第4张图片

 

在BaseApplication中或者其他类中就可以引用BuildConfig类的全局变量值执行不同逻辑

最常见的应用

buildConfigField "boolean", "log_debug, "true/false" 
来控制对应的日志打印...

 

你可能感兴趣的:(android,开发)