首页 > 解决方案 > Firebase 消息传递问题

问题描述

我正在尝试学习 Firebase 消息传递,以便我可以将我的应用程序(其中一个是聊天应用程序)从 GCM 迁移到 FCM。

我正在阅读文档,他们告诉我,例如,如果我要使用消息传递,我必须在我的 AndroidManifest.xml 文件中指定 .MyFirebaseMessagingService 和 .MYFirebaseInstanceIDService 。此外,我需要迁移我的 InstanceIDListenerService、可能是我的 GcmListenerService,以及可能使用 GcmPubSub。

Github 上的消息传递示例并不像聊天应用程序那样复杂——它只显示了如何手动将通知从 firebase 控制台发送到我的应用程序。

然而,在这之前,我发现并实现了 Tutorial Point 的第一个教程 是一个实际工作的聊天应用程序。它非常简单,并且不使用文档说我必须使用的任何东西。“聊天”模块有一个简单的 ChildEventListener,它会在任何时候发送或接收消息时触发。没有消息服务器,根本没有服务器。它使用 Android Volley。

教程点解决方案似乎只是正式 Firebase 文档推荐的复杂性和代码的一小部分。我错过了什么?

标签: androidfirebasegoogle-cloud-messagingfirebase-cloud-messaging

解决方案


听起来 Tutorial Point 的教程使用 Firebase 实时数据库来构建聊天应用程序,这与 Firebase 云消息传递有很大不同。

实时数据库主要在应用程序处于活动状态时使用,以使应用程序中的数据与云中的数据库保持同步。聊天应用程序是这个数据库的一个很好的例子,因为它们以直观的方式突出了 API 模型。

Firebase Cloud Messaging 用于向活动和非活动的应用传递消息,并向用户显示通知,即使应用不活动也是如此。

由于您正在从 GCM 迁移到 FCM,因此该教程似乎无关紧要。相反,我建议遵循Migrate a GCM Client App for Android to Firebase Cloud Messaging


推荐阅读