消息类型

2025年3月17日 | 阅读 3 分钟

使用 Firebase Cloud Messaging,我们可以发送三种类型的消息,即:通知消息、数据消息以及包含两者通知和数据负载的消息。

1) 通知消息

Firebase SDK 自身处理通知消息。通常,通知消息包含标题、图标、消息等。这些消息也可以从 Firebase 控制台 UI 发送。通过发送这种类型的消息,我们无法对信息进行太多控制。当应用程序在后台时,通知将自动显示。

通知是 Android 在我们的应用程序 UI 之外显示的消息,用于向用户提供提醒、与其他人的沟通或有关我们应用程序的其他及时信息。用户可以点击通知以打开我们的应用程序或直接从通知中采取行动。

Firebase Types of Message

通知设计由系统模板确定 - 模板的每个部分的内容由我们的应用程序定义。通知中的某些信息仅在展开视图中显示。通知最常见的组成部分如下

  1. 小图标
    在通知中设置一个小图标是必不可少的。这个小图标用 setSmallIcon() 设置。
  2. 应用名称
    应用程序名称由系统提供。
  3. Timestamp
    时间戳也由系统提供,但我们可以使用 setWhen() 函数覆盖它,或者使用 setShowWhen() 函数隐藏它。
  4. 标题
    它也是可选的,并使用 setContentTitle() 函数设置。
  5. 文本
    文本是可选的,并使用 setContentText() 设置。
  6. 大图标
    这是可选的,我们将其用于联系人照片。我们不将其用于我们的应用程序图标,并使用 setLargeIcon() 函数设置。

2) 数据消息

数据消息由 Android 应用程序处理。如果我们想随信息一起发送一些额外的数据,那么我们可以添加此类消息。但是,无法通过 Firebase 控制台发送这些消息。要使用 Firebase API 发送通知,我们必须具有服务器端逻辑。在发送此消息时,我们必须使用数据键。

我们可以使用数据消息将自定义数据元素发送到客户端应用程序。但是,FCM 对这些数据消息设置了 4KB 的限制,因此如果我们的负载大于 4KB,我们必须使用 WorkManager 或 JobScheduler API 获取额外的数据。

3) 同时包含通知和数据负载的消息

消息中也可以包含通知和数据负载。这些类型消息的发送取决于应用程序的状态,即后台和前台。我们可以使用通知和数据键来处理这些消息。

当应用程序状态在后台时,应用程序会接收到通知负载,当用户点击通知时,如果应用程序在前台,则应用程序会收到一个消息对象,其中包含两个负载。

FCM 控制台

现在,我们将创建一个 Android 项目并将其添加到 Firebase,可以从 Google Assistant 或手动添加。之后,我们将移动到 FCM 控制台 (Firebase->Grow->Cloud Messaging)。

Firebase Types of Message

点击 发送您的第一条消息

Firebase Types of Message

点击 发送您的第一条消息 后,它将要求填写一些字段,例如通知标题、通知文本、可选的通知图像和可选的通知名称。

Firebase Types of Message

填写所有字段后,点击 下一步

Firebase Types of Message

点击 下一步 后,它将询问 目标用户细分 还是 主题。我们将为目标用户选择应用程序,然后点击 下一步

Firebase Types of Message

Firebase Types of Message

当我们点击 下一步 时,它将询问 计划 并再次点击 下一步

Firebase Types of Message

之后,它将询问 转换事件。我们可以这样做,但这是可选的。因此,我们可以忽略它并继续。

Firebase Types of Message

之后,它将询问一些额外的选项,这些也是可选的。这些是通知渠道、自定义数据、声音和过期等。之后,我们将点击 审查

Firebase Types of Message

发布后,我们可以在控制台中看到通知。

Firebase Types of Message

如果我们想了解消息传递到我们应用程序的情况,我们可以复制通知。我们可以进入报告仪表板,该仪表板记录了设备中发送的消息数量。它还包含一些用户看到的印象通知数据,但我们将深入研究通知构建器。

Firebase Types of Message

Firebase Types of Message


下一主题发送通知消息