Android的口味:多个Java和src目录针对每种口味口味、多个、目录、Android

2023-09-04 02:59:48 作者:Iraqis(伊人)

任何人都可以向我解释如何我可以用,我的每个口味的更多的则只是主和味道特定的Java / src目录的目录?我的目标是让它们使用一个以上的味道,但不是所有的目录。

Can anyone explain to me how I can use for each of my flavors more then just the main and the flavor specific java/src directories ? My goal is to have directories which are used by more than one flavor but not all of them.

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

For example I have 3 flavors : A1, A2 and B.

在所有的青睐使用主/ src目录(默认的主src目录下) 在A1采用A1 / src目录(默认味src目录下) 在A2采用A2 / src目录(默认味src目录下) B采用B / SRC(默认味src目录下) A1和A2使用A / SRC(特殊的共享目录) All favors use main/src (default main src directory) A1 uses A1/src (default flavor src directory) A2 uses A2/src (default flavor src directory) B uses B/src (default flavor src directory) A1 and A2 use A/src ("special" shared directory)

这可能吗?如果是的话,我应该把我的build.gradle文件?

Is this possible ? If so, what should I put in my build.gradle file ?

和作为奖金的问题,我可以选择以何种顺序摇篮去寻找文件在我不同的目录?

And as a bonus question, can I chose in which order gradle goes looking for files in my different directories ?

例如,如果我已经在这两个A / src和A1 / src目录a.png声明,我可以告诉摇篮先看看在A / src该文件,并且仅如果没有找到寻找它的A1 / src目录?

For example if I have a.png declared in both A/src and A1/src, can I tell gradle to first look for this file in A/src, and only if nothing is found look for it in A1/src ?

推荐答案

如上所述的这里

如上面所提到的,每个sourceSet可以定义多个资源文件夹。

As mentioned above, each sourceSet can define multiple resource folders.

您可以定义多个资源文件夹。例如是这样的:

You can define multiple resource folder. For example something like this:

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   
     }
}