Firebase 云信息传递

Firebase 云信息传递 (FCM) 是一种跨平台消息传递解决方案,可供您免费、可靠地传递消息。

本文旨在对FCM连接配置做一个快速、简短有效的说明,了解FCM在项目中的使用。

主要功能

  • 发送通知消息或数据消息
  • 通用消息定位
  • 从客户端应用发送消息

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

  • 一个可信赖的环境,例如 Cloud Functions for Firebase 或用于构建、定位和发送消息的应用服务器
  • 接收消息的 iOS、Android 或网页 (JavaScript) 客户端应用

您可以通过 Admin SDK 或 HTTP API 和 XMPP API
发送消息。为了测试或发送具有强大内置定位和分析功能的营销或互动消息,您还可以使用通知编辑器。

IOS

面向 iOS 应用的设置
对于 iOS 客户端应用,您可通过两种互补的方式实现 Firebase 云消息传递:

  • 通过 Firebase 云消息传递 APNs 接口接收不超过 4KB 的基本推送消息。
  • 在前台应用中发送上行消息和/或接收下行数据负载,最高 4KB。

Firebase 云消息传递中的方法调配

FCM SDK 在两个关键环节执行方法调配:映射 APNs 令牌到 FCM 注册令牌,以及在下行消息回调处理期间捕获分析数据。

将 Firebase 添加至您的 iOS 项目

  1. 将 Firebase 添加至您的应用
  2. 添加 SDK
  3. 上传您的 APNs 身份验证密钥
  4. 在您的应用中初始化 Firebase
  5. 注册以接收远程通知

获取注册令牌

  1. 检索当前注册令牌
  2. 监控令牌的生成
  3. 导入现有的用户 APNs 令牌

Android

面向 ANDROID 应用的设置

  1. 设置 Firebase 和 FCM SDK
  2. 修改您的应用清单
  3. 获取设备注册令牌
  4. 检查 Google Play 服务

FCM服务器

Firebase 云消息传递的服务器端包含两个组件

  • 由 Google 提供的 FCM 服务器
  • 应用服务器或其他受信任的环境,例如 Cloud Functions for Firebase

受信任的服务器环境的作用

为了能编写使用 Firebase 云消息传递的客户端应用,您必须拥有一个满足以下标准的服务器环境

  • 能够与您的客户端通信。
  • 能够向 FCM 服务器发送格式正确的消息请求。
  • 能够使用指数退避算法处理请求和重新发送请求。
  • 能够安全存储服务器密钥和客户端注册令牌。请注意,切勿在任何客户端代码中包含服务器密钥。
  • 对于 XMPP,服务器必须能生成消息 ID 来唯一标识它发送的每条消息(FCM HTTP 连接服务器会生成消息 ID
    并在响应时返回这些 ID)。XMPP 消息 ID 对于每个发送者 ID 而言都应是唯一的。

参考链接:Google Firebase 云信息传递说明文档

相关推荐