如何在productFlavors中管理两个不同的applicationId?

时间:2018-11-19 12:10:10

标签: android android-productflavors android-build-flavors

我需要在一个项目中管理两个不同的客户端代码,所以我已经使用productFlavors并为每个客户端定义了风味。

现在的问题是两者的源代码相同,但是需要定义不同的hashlib

  1. com.abc
  2. com.def。

我该如何使代码保持相同,而applicationId不同?

2 个答案:

答案 0 :(得分:2)

添加如下所示的代码块集.csb

applicationId

答案 1 :(得分:0)

android会为您想要在所有构建变体之间共享的所有内容创建main/源集和目录,因此无需根据您的情况创建新的源集。

您可以将applicationIdSuffix用于不同的构建变体,在计算变体的最终应用程序ID时,它们会附加到“基本”应用程序ID中。例如:     flavourDimensions“ appMode”

productFlavors {

    free {
        dimension "appMode"
        applicationIdSuffix ".free" //the application id of 'free' is com.example.com.free
    }
    paid {
        dimension "appMode"
        applicationIdSuffix ".paid"//the application id of 'free' is com.example.com.paid
    }
}

applicationIdSuffix将附加到程序包名称(基本应用程序ID)之后, com.example.com是上面示例中的程序包名称。