特定风味+类型组合的清单
Posted
技术标签:
【中文标题】特定风味+类型组合的清单【英文标题】:Manifest for specific flavor+type combination 【发布时间】:2018-09-20 07:55:36 【问题描述】:在我的应用中,我有两个风味维度:device
、environment
还有这样的味道:
standard
dimension = "device"
...
custom
dimension = "device"
...
dev
dimension = "environment"
...
prod
dimension = "environment"
...
现在我想在清单中为 customRelease 组合提供一些特定的东西(不管“环境”风味维度)。
我创建了一个文件src/customRelease/androidManifest.xml
,但 Android Studio 确实看到了这个文件。
如果我将清单放入src/customDevRelease/AndroidManifest.xml
,那么这对我有用,但我还需要将清单放在这里src/customProdRelease/AndroidManifest.xml
,这不好。
【问题讨论】:
【参考方案1】:我通过为一些构建变体设置清单路径解决了这个问题:
def manifestSkygolfReleaseFile = 'src/customRelease/AndroidManifest.xml'
sourceSets
customDevRelease
manifest.srcFile manifestSkygolfReleaseFile
customProdRelease
manifest.srcFile manifestSkygolfReleaseFile
这不是一个理想的解决方案,因为将来如果我添加另一种类型的环境(测试),我需要不要忘记向 gradle 添加一段代码:
customTestRelease
manifest.srcFile manifestSkygolfReleaseFile
更糟糕的是,我的实际应用有 4 个风味维度。
【讨论】:
以上是关于特定风味+类型组合的清单的主要内容,如果未能解决你的问题,请参考以下文章
Android多版本flavor配置之资源文件和清单文件合并介绍
Android多版本flavor配置之资源文件和清单文件合并介绍
定义特定风味的buildconfigfield和buildType