firebase - 使用多个 Firebase 帐户(不是项目)

标签 firebase firebase-cloud-messaging firebase-analytics

我们在 Android 和 iOS 原生应用程序中使用两种 Firebase 服务 - Firebase Analytics 和 FCM(Firebase 云消息传递)。这些服务由两个独立的团队拥有——分析团队拥有包含分析项目的 Firebase 帐户,而 IT 团队拥有用于 FCM 的帐户(包含 FCM 项目)。我们还将 UrbanAirship 用于内部使用 FCM key (来自 FCM 项目的 API key )的 PUSH 消息。应用程序当前使用从 Analytics 帐户下载的 google-services.json,因此分析事件流动得很好。

但是 PUSH 通知不起作用,因为 UA(UrbanAirship) 帐户包含来自不同帐户的 FCM API key 。作为临时解决方案,我们将 UA 配置为使用来自 Analytics 项目的 FCM key (因为应用仅使用来自分析帐户的 JSON),我认为这不适合长期运行,它会在两个团队之间带来依赖性。请分享您对这种情况下最佳实践的专家意见,以便两个团队(分析、IT)可以独立管理他们的(单独的)帐户。

请注意,我在下面复制了几个其他线程,但它们指的是处理多个项目,而不是单独的帐户。所以发了这个问题。谢谢!

Can one single application connect with multiple Firebase Account?

Use multiple firebase accounts in single android app for google analytics

最佳答案

最后,我们得到了上述问题的解决方案,并想与大家分享,这样也能帮助到其他人。 “截至日期”(不确定 future 的更新): Android 项目中的 Firebase Analytics SDK(实际上还有许多其他 Firebase 功能)取决于我们从 Firebase 控制台(相应项目)下载并在 Android 项目中使用的 google-services.JSON 文件。

相比之下,通过 Urban Airship (UA) SDK 推送通知不依赖于 google-services.JSON,实际上它仅依赖于 airshipconfig.properties 文件设置。

因此,我们可以维护不同的 Firebase 帐户,例如在我们的案例中,一个由分析团队控制,另一个由 IT 团队控制,用于推送通知(与 Urban Airship 集成)。

请注意,UA 服务器端设置(在控制台)和 Android 应用程序 (airshipconfig.properties) 可以设置如下:

UA 控制台 - 在 Settings->Platforms->Android->API Key 部分使用从 Firebase console->Settings->Cloud 复制的 API key 消息->服务器 key 。请参阅下面复制的示例屏幕截图。

Android 应用程序 (airshipconfig.properties) - 使用上述 Firebase 控制台中同一部分的“发件人 ID”。 API key 和 SenderID 在客户端和服务器组件之间建立关联。

Firebase Analytics Console Keys

UrbanAirship console settings

iOS 应用 - 由于 iOS 应用依赖于 APNS 而不是 Firebase FCM,因此无需在 Urban Airship 控制台中为此设置特定的 key 。但是,需要在 UA 控制台中提供证书。

关于firebase - 使用多个 Firebase 帐户(不是项目),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52894600/

相关文章:

android - Firebase Instance Id 和 Token 的范围

Xamarin 表单中的 Firebase 分析

Android Firebase Analytics 无法正常工作

ios - 如何读取 Firebase 子值?

java - 如何解决 Android Firebase 错误 "Default FirebaseApp is not initialised in this process"?

Android 设备未收到通过 Firebase 云消息传递发送的 5% 的推送

ios - Firebase 云消息传递 - iOS - 未注册或无法订阅主题

android - 在 Android 应用中添加 Firebase Analytics 和 Google Analytics

android - 如何从 Firebase 存储中获取所有文件?

java - 在 Android 中测试时使用不同的 `google-services.json`