我们可以合并两个 android 来源并使用产品口味吗?

Can we merge two android source and use product flavors?

我有两个 android 项目 相同的源代码 只有 应用程序图标更改 在两个应用程序中。但我没有使用产品风味。现在我需要合并源代码并使用产品风味。所以有可能吗?

您正在寻找的内容已得到解答here,基本上您需要做的是创建一个文件夹结构来镜像 main->res->mipmap 结构,将 main 替换为您的风格名称,如下所示:

-src
  -main
    -res
  -app_one
    -res
      -mimap-*
        -ic_launcher.png
  -app_two
    -res
      -mimap-*
        -ic_launcher.png

编辑

合并 2 个项目的源代码后,您需要在 gradle 配置中创建 2 种不同的产品风格,并将清单占位符用于应用程序名称和包等内容:

productFlavors {
        app_one {
            applicationId "xxx.yyy.zzz"
        }
        app_two {
            applicationId "aaa.bbb.ccc"
        }
    }

在您的清单中:

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    package="${applicationId}">

如果代码内容相同,您应该没有任何问题,只需 select 准备发布 apk 时正确的 buildVariant 和密钥库即可。