说我有这个目录结构:
app
--src
|--main
| |--java
| |--res
| |--drawable
| |--values
| |--values-fr
| |--values-de
|
|--flavor1
| |--res
| |--drawable
|
|--flavor2
| |--res
| |--drawable
|
|--flavor3
|--res
|--drawable
values-fr
对flavor1
和flavor2
都很常见,因此values
,values-fr
和values-de
应该打包
flavor3
应该只打包values
和values-de
。因此,我只需要从values-fr
排除flavor3
资源文件夹。
我已经尝试了很多组合,例如下面的组合,但无法弄明白,或者即使它可能。
sourceSets {
flavor3 {
res.exclude 'values-fr/**'
res.exclude 'values-fr/'
}
}
修改
我使用以下内容为包含以上示例找到了这个解决方案:
productFlavors {
flavour3 {
resConfigs 'de' // include '-de' resources, along with default 'values'
}
}
您还可以查看ICU here的国家/地区代码列表。
答案 0 :(得分:2)
最终的解决方案是包含一种语言 - 在这种情况下,只有德语(de):
productFlavors {
flavour3 {
resConfigs 'de' // include '-de' resources, along with default 'values'
}
}
作为参考,您还可以查看ICU here的国家/地区代码列表。
答案 1 :(得分:0)
您可以使用此代码段排除这些文件夹:
sourceSets {
flavor3 {
main {
resources {
srcDir 'res'
exclude '**/values-fr/**'
}
}
}
}