Firebase如何在多个项目中使用google-services.json文件?

4

我们的应用中使用了两个不同的Firebase项目:

  • Live:包含实际上线的iOS和Android应用程序
  • Test:包含所有iOS和Android测试应用程序

据我所知,google-services.json文件(Android)包含Firebase项目信息和所有相关应用程序(作为“客户端”)。是否支持将第二个“project_info”添加到此文件中?


为什么需要将两个项目添加到services.json文件中?使用案例是什么? - OBX
我们有三个不同的测试应用和一个生产应用程序。如果应用营销经理想发送通知,他或她总是必须从四个应用中选择生产应用...这导致 Firebase 控制台上非常糟糕的用户体验。 - Fahim
1个回答

10
为什么不尝试使用Android应用程序的“flavors”功能?谷歌在Play服务插件的2.0版本中才刚刚加入了对该功能的支持。自从这个版本的gradle插件com.google.gms:google-services:2.0.0-alpha3以来,你就可以这样做:
app/src/flavor1/google-services.json app/src/flavor2/google-services.json
插件的3.0.0版本将在这些位置搜索JSON文件(在考虑你是否有flavor1和build type为debug的情况下)。
/app/src/flavor1/google-services.json
/app/src/flavor1/debug/google-services.json
/app/src/debug/google-services.json
/app/src/debug/flavor1/google-services.json
/app/google-services.json

即使使用了flavorDimensions,这对我也有用。我在一个维度上有免费和付费版本,在另一个维度上有Mock和Prod。我还有3个buildTypes:debug、release和staging。

google-services.json文件的数量取决于您项目的特性,但您至少需要为每个Google项目准备一个json文件。

如果您想了解此插件如何处理这些json文件的详细信息,请参阅:https://github.com/googlesamples/google-services/issues/54#issuecomment-165824720

官方文档链接:https://developers.google.com/android/guides/google-services-plugin

请访问此处以检查此插件的最新版本:https://bintray.com/android/android-tools/com.google.gms.google-services/view


谢谢Himesh!我不知道google-services支持构建类型和风味。 - Fahim
社区的一个提示:这也适用于其他文件,如Java文件。它们由Gradle构建合并在一起。 - Fahim

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接