Android productFlavors实现差异化打包
前面介绍过 美团多渠道打包解决了打包慢的问题,但随着渠道越来越多,对打包的要求也越来越多,比如我们的APP 和某个渠道做首发(活动)需要我们在名字后面加上不同的后缀 等等,还有些渠道不让我们使用自动更新、第三方统计,反正就是各种奇葩要求,让我们不得不复制一份代码出来做修改才可以。
如果遇到以上问题,不得不逼着我们我们重拉新的分支去做这些处理,如果仅是一两个的话还好,如果多起来简直就是噩梦,我们需要在分支做这些差异化的开发,然后每次还需要将主分支的代码合并回来,想想就害怕了。有没有。。。
还好,自从有了Gradle flavor,一切都变得简单了。本文假定读者使用过Gradle,如果还不了解建议先阅读相关文档。
Flavor
先来看build.gradle
文件中的一段代码:
android {
....
productFlavors {
flavor1 {
minSdkVersion 14
}
}
}
上例定义了一个flavor:flavor1,并指定了应用的minSdkVersion为14(当然还可以配置更多的属性,具体可参考相关文档)。与此同时&#