Firebase Cloud Messaging

Firebase Cloud Messaging (FCM) 是一种跨平台消息传递解决方案,可供您可靠地传递消息,且无需任何费用。

使用 FCM,您可以通知客户端应用有新的电子邮件或其他数据有待同步。您可以发送通知消息进行用户再互动并留住他们。在即时通讯等使用情形中,一条消息可将最多 4000 字节的载荷传送至客户端应用。

iOS+ 设置 Android 设置 Web 设置 Flutter 设置 C++ 设置 Unity 设置

主要功能

发送通知消息或数据消息 发送向用户显示的通知消息。 或者发送数据消息,并完全在应用代码中决定具体的行动。请参阅消息类型
通用消息定位 使用以下三种方式中的任意一种将消息分发到客户端应用:分发至单一设备、分发至设备组或分发至订阅了主题的设备。
从客户端应用发送消息 通过 FCM 可靠而省电的连接通道,将确认消息、聊天信息及其他消息从设备发回至您的服务器。

工作原理

FCM 实现包括用于发送和接收的两个主要组件:

  1. 一个受信任的环境,例如 Cloud Functions for Firebase 或用于构建、定位和发送消息的应用服务器。
  2. 一个通过针对具体平台的相应传输服务接收消息的 Apple、Android 或 Web (JavaScript) 客户端应用。

您可以通过 Firebase Admin SDKFCM 服务器协议发送消息。 您可以使用 Notifications Composer 进行测试,并使用强大的内置定位和分析功能或自定义导入的细分发送营销或互动消息。

如需详细了解 FCM 组件的相关重要信息,请参阅架构概览

实现流程

设置 FCM SDK 根据适用于您的平台的设置说明,在您的应用上设置 Firebase 和 FCM。
开发您的客户端应用 向您的客户端应用添加消息处理、主题订阅逻辑或其他可选功能。在开发过程中,您可以轻松地从 Notifications Composer 发送测试消息。
开发您的应用服务器 确定您要使用 Firebase Admin SDK 还是某种服务器协议来创建发送逻辑,这些逻辑将用于身份验证、构建发送请求 (send request)、处理响应等等。然后,在您信任的环境中构建逻辑。请注意,如果您想在客户端应用中使用上行消息传递功能,则必须使用 XMPP,但 Cloud Functions 不支持 XMPP 所需的持久性连接。

后续步骤

  • 运行 AndroidiOS 快速入门示例。通过这些示例,您可以运行和查看使用 Firebase 控制台向单台设备发送测试消息的代码。

  • 参阅 AndroidiOS 教程。

  • 将 Firebase Cloud Messaging 添加至您的 Android 应用、Apple 应用或 Web 应用中。

  • 设置您信任的环境,以便在其中构建和发送消息请求。 您可以使用 Admin SDK 编写发送逻辑,并轻松地将该代码部署到 Cloud Functions for Firebase 或 Google 管理的其他云环境中。 或者,您可以使用 FCM 服务器协议执行服务器开发。

  • 详细了解如何发送数据载荷、设置消息优先级,以及 FCM 支持的其他消息传递选项