Android Gradle混合口味不';行不通

Android Gradle混合口味不';行不通,android,gradle,android-gradle-plugin,Android,Gradle,Android Gradle Plugin,我在Android上开发,对Gradle的构建逻辑有一些困难 我试图为一个组合的风格提供一组资源和java文件 我把它们放在一个文件夹src/productFlavor1ProductFlavor2/ 但是当我编译构建变量productFlavor1ProductFlavor2DevDebug时,它根本没有从productFlavor1ProductFlavor2文件夹中得到任何东西 我几乎什么都试过了。。。 从语法和顺序来看: src/productFlavor1ProductFlavor2/

我在Android上开发,对Gradle的构建逻辑有一些困难

我试图为一个组合的风格提供一组资源和java文件

我把它们放在一个文件夹
src/productFlavor1ProductFlavor2/

但是当我编译构建变量
productFlavor1ProductFlavor2DevDebug
时,它根本没有从
productFlavor1ProductFlavor2
文件夹中得到任何东西

我几乎什么都试过了。。。 从语法和顺序来看:

src/productFlavor1ProductFlavor2/
src/productFlavor1productFlavor2/
src/productFlavor1-productFlavor2/
src/productFlavor1/ProductFlavor2/
尝试将文件夹指示为渐变

android.applicationVariants.all { variant ->
if (variant.getProductFlavors().get(0).name.equals('productFlavor1')
   && variant.getProductFlavors().get(1).name.equals('productFlavor2'))
    variant.sourceSets = 'src/productFlavor1ProductFlavor2'//read only... so doesn't work
}

有人知道为什么中所示的口味组合实际上不起作用吗。。。。?或者如果我遗漏了一些东西…

要想实现这一点,你需要定义口味的多个维度。 不允许合并单一风味维度

我不认为把源代码放到多风格文件夹中是个好主意,因为你需要处理太多的组合

如果我站在你的立场上,我会分别对待每个维度,即: 使用productFlavor1和productFlavor2创建一个单独的文件夹

看看这个:

不同文件夹的优先级顺序: 1.构建变量(完全限定名,如debugFlavor2/src) 1.生成类型(调试/src) 1.产品风味(如果您有多个维度,它们是按声明顺序排序的) 1.主/主控室