Android Flavors:每种风味的多个java和src目录

Pâr*_*phe 5 java android src gradle

任何人都可以向我解释我如何使用我的每种口味更多,然后只是主要和味道特定的java/src目录?我的目标是让目录由多种风格使用,但不是全部使用.

例如,我有3种口味:A1,A2和B.

  • 所有的好处都使用main/src(默认的主src目录)
  • A1使用A1/src(默认的flavor src目录)
  • A2使用A2/src(默认的flavor src目录)
  • B使用B/src(默认的flavor src目录)
  • A1和A2使用A/src("特殊"共享目录)

这可能吗 ?如果是这样,我应该在build.gradle文件中添加什么?

作为一个额外的问题,我可以选择gradle在哪个顺序寻找不同目录中的文件?

例如,如果我在A/src和A1/src中都声明了a.png,我是否可以告诉gradle首先在A/src中查找此文件,并且只有在找不到任何内容时才在A1/src中查找它?

Gab*_*tti 10

如上所述这里

如上所述,每个sourceSet都可以定义多个资源文件夹.

您可以定义多个资源文件夹.例如这样的事情:

android {
     ...
     sourceSets {
            main {
                //....
                res.srcDirs = ['/src/main/res']

            }
            flavorA1 {
                 res.srcDirs = ['/src/flavor1/res', '/src/commonA/res']
            }
            flavorA2 {
                 res.srcDirs = ['/src/flavor2/res', '/src/commonA/res']
            }     
            //.....other flavors   
     }
}
Run Code Online (Sandbox Code Playgroud)