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

如何在Android应用中接入两个Firebase项目区分UAT与生产环境?

解决方案

1. 拆分两个独立Firebase项目

  • 直接在Firebase控制台创建两个完全独立的项目,一个专门对应UAT环境,另一个对应生产环境。
  • 给测试团队开通UAT项目的查看权限,产品/运营团队仅开放生产项目的权限,确保各团队只能访问对应环境的数据,互不干扰。

2. 配置应用的环境切换逻辑

  • 从两个Firebase项目分别下载对应平台的配置文件:Android为google-services.json,iOS为GoogleService-Info.plist,将它们放在项目的不同目录下,比如:
    • Android:app/src/uat/google-services.json(UAT环境)、app/src/production/google-services.json(生产环境)
    • iOS:单独创建UAT和Production文件夹,分别存放对应的plist文件
  • 在项目构建配置中设置环境匹配规则:
    • Android:在build.gradle中添加productFlavors配置,指定不同flavor对应的配置文件路径:
      android {
          productFlavors {
              uat {
                  applicationIdSuffix ".uat"
              }
              production {
                  // 生产环境默认配置
              }
          }
      }
      
      构建时选择对应flavor,SDK会自动加载对应目录的配置文件。
    • iOS:在Xcode中创建两个Target(UAT和Production),分别绑定对应的plist文件,或通过Build Settings中的Info.plist File路径切换配置。

3. 确保数据上报完全隔离

  • 应用代码无需修改Analytics的上报逻辑,只要配置文件加载正确,Firebase SDK会自动将数据发送到对应项目的Analytics模块中。
  • 构建UAT版本时,所有数据只会上报到UAT项目;生产版本的数据则全部进入生产项目,彻底解决数据混流问题。

4. 验证隔离效果

  • 构建UAT版本包,触发若干测试事件,前往UAT项目的Analytics后台确认数据是否正常上报。
  • 测试生产版本,验证生产项目中仅存在生产环境的数据,UAT项目中仅显示UAT环境的数据,确认隔离生效。

内容的提问来源于stack exchange,提问作者Anees Ani

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.04 04:10:10