具有不同资源的两种口味继承了一种基本口味的布局

Two flavours with different resources inheriting layout from one base flavour

我的 android 应用程序分为四种不同的构建风格。这些风格中的每一个都有一部分独特的 javaxml 文件,以及一部分 main 下的共享文件。为了清楚起见,我们将它们称为 CucumberTomatoOnionPepper。这些风格具有独特的布局、可绘制对象、字符串、颜色、java 文件等。

我现在的要求是,我需要将 Pepper 口味分成两个子口味; Red-PepperGreen-Pepper。这两种风格的布局应该是相同的——唯一的不同是这两种风格必须使用不同的 drawablestring 资源。出于显而易见的原因,我不想在红色和绿色风格中使用重复的布局文件。

如何在 gradle 中实现?

您可以定义多个资源文件夹。
通过这种方式,您可以将通用文件夹用于 2 种口味(在您的 redPepper 和 greenPepper 中)。
例如这样的事情:

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

            }
            redPepper {
                 res.srcDirs = ['/src/flavorRed/res', '/src/commonPepper/res']
            }
            greenPepper {
                 res.srcDirs = ['/src/flavorGreen/res', '/src/commonPepper/res']
            }     
            //.....other flavors   
     }
}