Android Studio-Flavors可以与其他Flavors共享代码吗?

Android Studio-Flavors可以与其他Flavors共享代码吗?,android,android-studio,android-build,Android,Android Studio,Android Build,在我当前的应用程序中,我有两个版本,让我们称它们为build1和build2。我理解两种风格可以共享通用代码/资源,但也可以有单独的代码和资源,例如: 我试图做的是扩展build2,以便它与另一个构建共享一些代码(例如build3)。共享某些代码,如以下代码: 这将是build2和Build3共享一些代码/资源,同时还能够拥有自己独特的代码集。 或: 在这里,build3正在扩展build2,以便build2中的所有代码和资源在两个版本中都可用,但build3也可以有自己独特的代码/资源

在我当前的应用程序中,我有两个版本,让我们称它们为
build1
build2
。我理解两种风格可以共享通用代码/资源,但也可以有单独的代码和资源,例如:

我试图做的是扩展
build2
,以便它与另一个构建共享一些代码(例如
build3
)。共享某些代码,如以下代码:

这将是build2和Build3共享一些代码/资源,同时还能够拥有自己独特的代码集。 或:

在这里,
build3
正在扩展
build2
,以便
build2
中的所有代码和资源在两个版本中都可用,但
build3
也可以有自己独特的代码/资源


我认为扩展
build2
是最好的方法(如果可能的话),但是任何建议或为我指明正确方向都将不胜感激。我花了6个多小时在互联网上搜索,但没有结果。

对此没有很好的支持。如果你真的想这么做的话,你可以探索一些带有符号链接的黑客技术,试图让不同风格的人有效地共享文件夹,但这会让源代码管理变得有点奇怪,我不能确定它不会在构建中引起微妙的问题

我鼓励您不要在构建系统中做太多的欺骗,因为从长远来看,这将使您的应用程序更难编写和维护,特别是因为目前IDE没有很好的工具来处理不同产品风格的代码(例如,如果您重构代码,则无法将重构应用于非活动产品风格;您一次只能处理一个)


更好的方法是将构建2构建3中常见的内容提取到Android库模块中,该模块依赖于这些风格,但不依赖于构建1风格。不同的产品风格可能有不同的依赖性,并且该机制受d工作得很好。

谢谢。我现在就不谈了。我真的不想用黑客的方式使代码库过于复杂。谢谢你的快速响应和答案!你可以像这样尝试使用
源代码集