背景:
因为工作项目中,Android产品要求 可以安装测试版进行测试。这样就会要求 生产版+测试版共存的情况。
实现方式:
查询资料,发现可以采用两种方式实现。
① 多样化(Flavors)
创建项目在 src下面创建不同版本的文件夹,将对应资源放入对应目录
② 变体(Variants)
创建 build types 文件夹
我这里因为源码目录问题和实际问题,采用 创建build types文件夹的方式
1.在as 中选择 build -> edit build types 根据自己的需要进行设置即可。
则项目中会出现如下文件夹结构,将自定义或者重写的 res文件拷贝进去即可
2. 因为不同版本,涉及到不同的 配置内容。需要使在 build.gradle中进行修改。
例如,我们使用高德地图。要求 key 和包名一致。则 release\debug\enterprise各不相同。
在 androidManifest.xml中使用占位符的方式
android:name="com.amap.api.v2.apikey"
android:value="${AMAP_KEY}" />
3. 构建项目的时候,选择 左下角的 build variants 方式进行构建。
---
PS: 如果考虑项目结构比较规范,应该是采用 Flavors 的体验更好一些吧。