解决Flutter中FCM与AwesomeNotifications的双重通知问题
2026/6/14 3:08:43 网站建设 项目流程

引言

在使用Flutter开发移动应用时,我们常常会集成多种服务来提升用户体验。Firebase Cloud Messaging (FCM) 用于推送通知,Awesome Notifications 则用于处理本地通知。然而,当这两个服务结合使用时,可能会遇到一个有趣但困扰的问题:同一推送消息在设备上显示两次。本文将通过分析问题原因并提供解决方案,帮助开发者们顺利解决这一常见问题。

问题分析

根据参考内容,我们注意到:

  • FCM 配置:在FCM的初始化中,我们设置了前台和后台的通知处理逻辑。
  • Awesome Notifications:在Awesome Notifications中,我们初始化了通知渠道,并设置了点击通知后的行为。

当FCM接收到一个推送消息时,无论应用程序在前台、后台还是关闭状态,消息都会被处理两次:

  1. FCM直接显示通知:FCM本身会根据其设置显示一个通知。
  2. Awesome Notifications处理:FCM的处理逻辑会触发Awesome Notifications的showNotification方法,再次显示一个几乎相同的通知。

解决方案

1. 使用数据消息而不是通知消息

FCM提供了两种消息类型:通知消息和

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询