Android(安卓)Studio 构建变体(Build Variant)
16lz
2021-01-26
每一个 Build Variant 代表一个应用的不同版本,例如一个应用可以有免费版,和收费版,或者针对不同的设备的版本。
构建变体由一种 Build Type 和一种 Product Flavor 组成。
例如,有以下Build Type 和 Product Flavor:
Build Type :release , debug
Product Flavor : free, vip
那么最终会有组成四种 Build Variant
freeRelease, freedebug, vipRelease, vipDebug
四种Build Variant 可以有公共的代码和资源,和各自差异化的代码和资源
配置Build Type
在模块级别的 build.gradle
android { buildTypes{ //默认创建 release { } //默认创建 debug{ } //新增 jniDebug{ } } }
配置Product Flavor
同样是在模块级的 build.gradle
, Product Flavor 多了一个概念,叫做维度(Dimension), 不同的维度又可以组合成一种新的 Variant。
如下,是定义了两种维度,收费维度和区域维度,不同维度之间可以再组合。
配置如下:
android { //声明有两种维度,pay和area flavorDimensions "pay","area" productFlavors { free { dimension "pay" } vip { dimension "pay" } cn { dimension "area" } us { dimension "area" } }}
在工程的 src目录中,建立四种 flavor 对应的文件夹,加上 src/main ,最终目录如下:
src/mainsrc/freesrc/vipsrc/cnsrc/us
我们可以在 src/main
中放公共代码和资源,在每一种 flavor 对应的文件夹下,放差异化的代码。
更多相关文章
- 免费Android客户端静态代码安全分析工具—Dexter
- Android(安卓)Studio开发界面自定义,更有利于开发
- Android中ViewFlipper实现动态加载view
- Fresco集成Okhttp3
- Android控件之Spinner用法详解
- Android(安卓)focus search returned a view that wasn't able t
- Android一年工作经验应掌握的知识点
- android中selector改变界面状态用法小结
- Android(安卓)cmake编译FFmpeg