将类似的Android应用程序合并到一个项目中,并从中构建两个不同的应用程序

将类似的Android应用程序合并到一个项目中,并从中构建两个不同的应用程序,android,Android,假设我有两个非常相似的应用程序:一个用于发现/登记鸟类,另一个用于植物。大约80%的两个应用程序是相同的。区别在于这两个物种的特性不同。这导致了以下方面的差异:一些实体、db加载资源、2个布局、字符串、启动器图标和一些功能(例如播放歌曲、加载媒体) 我读过关于模块/库的文档/博客,但还没有“啊哈”的时刻 问题:合并两个应用程序并使用不同的片段、布局、实体等构建两个应用程序的最佳方法是什么?创建了一个可行的解决方案,使用而不是使用模块 使用产品口味,该应用程序有三个文件夹“main”、“birds

假设我有两个非常相似的应用程序:一个用于发现/登记鸟类,另一个用于植物。大约80%的两个应用程序是相同的。区别在于这两个物种的特性不同。这导致了以下方面的差异:一些实体、db加载资源、2个布局、字符串、启动器图标和一些功能(例如播放歌曲、加载媒体)

我读过关于模块/库的文档/博客,但还没有“啊哈”的时刻


问题:合并两个应用程序并使用不同的片段、布局、实体等构建两个应用程序的最佳方法是什么?

创建了一个可行的解决方案,使用而不是使用模块

使用产品口味,该应用程序有三个文件夹“main”、“birds”和“plants”。文件夹“main”包含两种风格共有的所有代码/资源/资产。“birds”和“plants”文件夹包含特定风味特有的代码/资源/资产

根据选择的口味,Gradle将“主要的”/“植物”或“主要的”/“鸟类”组合起来创建应用程序