之前写过一篇Gradle多版本管理,主要是通过productFlavors来控制产品版本。这篇文章将结合buildTypes来说一下多版本管理。
在正常开发中,我们一般会有至少 2 个环境:Debug、Release,即测试环境和生产环境。显然这 2 个环境要用 2 套不同的数据,那么在我们的 App 里必然就需要有个地方来控制这个环境。当然,我们可以在 Debug 的时候用 Debug 环境,然后当要发版时手动改成 Release 环境,但是这很麻烦,很难排除忘记修改的情况,那么等待重新编译将是个很漫长的过程。其实Gradle可以很好的解决这个问题:利用 buildTypes 来控制编译类型。
buildTypes 默认会有 debug、release 2 个类型,当然我们还可以添加自己的。比如有个beta环境,用于外网测试。当对接一些三方平台的接口时,有的只能用外网,那么只能整一套外网的测试环境了,比如美团外卖。好,现在假设我们有 debug、beta、release 3 个 buildTypes,然后 pad、phone、custom 3个 productFlavors,接下来就是针对这些环境做配置了:


