通过Gradle来切换不同的环境

因为项目发布出去了,为了方便测试,项目环境分为了开发环境和正式环境。
为了方面切换环境进行开发调试和打包,我们采用了Gradle来进行控制切换。


buildTypes {

  def isReleaseEnvironment = false

  debug {

      resValue "string", "app_name", "(测试)什么的"

      if (isReleaseEnvironment) {
          buildConfigField "boolean", "IS_RELEASE", "true"
          buildConfigField "String", "key", "\"value\""
      } else{
          buildConfigField "boolean", "IS_RELEASE", "false"
          buildConfigField "String", "key", "\"value\""
      }
  }
}

Note:
resValue "string", "app_name", "(测试)什么的"
这个可以修改资源文件中的app_name的内容,通常就是APP的名字。通过这句我们可以对不同的需要进行修改APP名字。

buildConfigField "boolean", "IS_RELEASE", "true"
这句的作用是定义一个常量。在Gradle Build的时候会自动生成一个BulidConfig的java文件。
然后我们就可以通过BulidConfig来访问这个变量。这样子基本可以满足我们对不同环境不同常量更改的需求了。
需要注意的是定义String需要加双引号。

大概就是这样。

下周写一篇阿里的dexposed框架的使用教程,实现热更新 ><

你可能感兴趣的:(通过Gradle来切换不同的环境)