You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用单一代码库结合不同Firebase项目生成多应用ID的APK

为不同Product Flavor关联独立Firebase项目的实现方案

要在单一代码库中生成多个可独立上架的应用,同时为每个应用关联不同Firebase项目,可按以下步骤实现:

1. 配置Product Flavors

在app级build.gradle(或build.gradle.kts)中定义对应每个独立应用的flavor,指定唯一的applicationId和应用名称:

productFlavors {
    abc {
        applicationId = "com.google.abc"
        resValue("string", "app_name", "ABC应用")
    }
    def {
        applicationId = "com.google.def"
        resValue("string", "app_name", "DEF应用")
    }
    ghi {
        applicationId = "com.google.ghi"
        resValue("string", "app_name", "GHI应用")
    }
}

buildTypes {
    debug {
        applicationIdSuffix = ".debug"
    }
    release {
        minifyEnabled = true
        proguardFiles(getDefaultProguardFile("proguard-android-optimize.txt"), "proguard-rules.pro")
    }
}

每个flavor对应一个独立应用,resValue用于动态设置应用名称,避免手动修改资源文件。

2. 存放Firebase配置文件

在app模块的src目录下,为每个flavor创建独立子目录,并放入对应Firebase项目的google-services.json文件,目录结构如下:

app/
├─ src/
│  ├─ abc/
│  │  └─ google-services.json  // 对应abc Firebase项目的配置文件
│  ├─ def/
│  │  └─ google-services.json  // 对应def Firebase项目的配置文件
│  ├─ ghi/
│  │  └─ google-services.json  // 对应ghi Firebase项目的配置文件
│  └─ main/
│     ├─ java/
│     └─ res/

Gradle构建时会自动根据当前选择的flavor,加载对应目录下的配置文件,无需重命名文件。

3. 配置Google Services插件

确保项目根目录的build.gradle中引入Google Services插件:

buildscript {
    dependencies {
        classpath("com.google.gms:google-services:4.4.1") // 使用与Firebase SDK兼容的最新版本
    }
}

然后在app级build.gradle末尾应用插件:

apply plugin: 'com.google.gms.google-services'

该插件会自动解析对应flavor的google-services.json,将Firebase配置注入到应用资源中,无需手动修改初始化代码。

4. 构建与验证

  • 在Android Studio的Build Variants面板中,选择目标flavor和构建类型(如abcRelease、defDebug)
  • 执行构建后,生成的APK会自动使用对应flavor的applicationId,并关联对应的Firebase项目
  • 可通过运行应用,验证Firebase功能(如Analytics、Auth)是否正常关联到对应项目

注意事项

  • 每个Firebase项目中必须提前添加对应applicationId的应用,确保下载的google-services.json正确匹配
  • 若使用Firebase SDK的最新版本,需保证Google Services插件版本与之兼容
  • 上架Google Play时,每个flavor的release APK对应独立的应用条目,需分别创建应用并上传

内容的提问来源于stack exchange,提问作者Supun Ayeshmantha

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.25 15:52:35