在gradle文件中配置开关

项目中有很多开关切换的需求,比如正式服务器切换测试服务器,这个时候,我们一般在Constants里面定义一个常量isTest来判断是否是测试服务器,然后获取链接的时候判断一下,这里描述一下如何在gradle文件中配置开关。

  1. 在项目根目录新建config.gradle文件,用于统一管理配置
  2. 在项目build.gradle中引用config.gradle文件
  3. 在config.gradle中定义:
def http_config = [:]  //定义属性集合
http_config.isTest = false  //定义
ext.http_config = http_config
  1. 在module的build.gradle中定义:
//BuildConfig.TEST_ENV  是否是测试环境,使用此变量判断是否是正式服务器
boolean is_test = rootProject.ext.http_config.isTest

android标签内

buildTypes {
        release {
            buildConfigField "boolean", "TEST_ENV", is_test ? "true" : "false"
            buildConfigField "boolean", "ENCRYPT_ENV", is_encrypt ? "true" : "false"
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
        }
        debug {
            buildConfigField "boolean", "TEST_ENV", is_test ? "true" : "false"
            buildConfigField "boolean", "ENCRYPT_ENV", is_encrypt ? "true" : "false"
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
        }
    }
  1. rebuild项目,就能使用Build.TEST_ENV属性判断是否是测试服务器了

你可能感兴趣的:(在gradle文件中配置开关)