如何使用单一代码库使用不同的 Firebase 项目创建多个应用程序 ID apk

问题描述 投票:0回答:1

背景:

  1. 我正在开发一个链接到 firebase 的 kotlin android 应用程序,已上传到 google playstore。我需要使用不同的 id 和新的 firebase 帐户名称将相同的应用程序上传到 google playstore。而且我不想维护多个代码库。

我做了一些研究,发现在应用程序级别 gradle 中使用不同的产品风格我可以创建多个具有不同应用程序 ID 的 apk。

示例:应用程序/gradle

productFlavors {
    pro {
        applicationId = "com.example.my.pkg.pro"
    }
    free {
        applicationId = "com.example.my.pkg.free"
    }
}

buildTypes {
    debug {
        applicationIdSuffix ".debug"
    }
}

我想知道的是,我计划为每个 apk 变体使用不同的 firebase 项目

举个例子吧

  1. com.google.abc - 对于此 apk,我需要链接 abc firebase 项目 -> google-services_abc.json
  2. com.google.def - 对于此 apk,我需要链接 edf firebase 项目 -> google-services_def.json
  3. com.google.ghi - 对于此 apk,我需要链接 ghi firebase 项目 -> google-services_ghi.json

我需要维护单个代码库,但需要有不同的应用程序 ID 才能作为不同的应用程序发布到 Playstore。我需要让每个应用程序使用不同的 firebase 项目。

谢谢你

android firebase kotlin android-productflavors
1个回答
1
投票

利用 app/build.gradle 文件中的产品风格来定义不同的应用程序变体。该策略将每个变体的配置分开,而不影响核心代码库。 摇篮

productFlavors {
    pro {
        applicationId "com.example.my.pkg.pro"
    }
    free {
        applicationId "com.example.my.pkg.free"
    }
    // Add more flavors as needed
}

然后关于 firebase 文件

app/
  - google-services.json   // (Optional) Default for 'debug' build type
  - pro/
      - google-services_pro.json
  - free/
      - google-services_free.json
  // ... (other flavor directories)
© www.soinside.com 2019 - 2024. All rights reserved.