gpt4 book ai didi

android - flutter + FCM : onBackgroundMessage vs onMessageOpenedApp

转载 作者:行者123 更新时间:2023-12-05 03:21:42 27 4
gpt4 key购买 nike

最近我一直致力于将 flutter 与 FCM 连接起来。读书时firebase docs我红了:

Handle background messages by registering a onBackgroundMessage handler.

,但稍后阅读 flutterfire docs我发现:

The firebase-messaging package provides two ways to handle this interaction:

  1. (...)
  2. onMessageOpenedApp: A Stream which posts a RemoteMessage when the application is opened from a background state.

我明白,第一个功能是在应用程序处于后台时处理通知(无论用户是否与之交互),第二个功能是在应用程序处于后台时处理通知点击。如果那是错误的,请纠正我。

但如果我是对的,那么同时使用这两个函数不会导致冗余吗? onBackgroundMessage 独立运行(作为单独的隔离),因此如果用户在应用关闭时点击通知,是否会触发这两个函数?

现在我使用 flutter_local_notifications 来保存未与之交互的通知(并且应用程序在后台/终止)并在用户启动/恢复应用程序时检查它们。如果我在上面的结论中也是正确的,那么我是否应该在 onMessageOpenedApp 中检查点击的通知是否已经由 onBackgroundMessage 处理(并因此保存在本地存储中)?

请帮我澄清一下。
谢谢。

最佳答案

如果消息由 onBackgroundMessage 处理,它不会导致通知出现(除非你手动这样做,例如通过 flutter_local_notifications),所以它不会t 出现在 onMessageOpenedApp 中。

onMessageOpenedApp 仅在应用程序处于后台(但未终止!)并且用户点击之前发送的通知时调用(因此,因为当应用程序处于前台时,所有消息都发送到 onMessage,它必须在应用程序处于后台时传递)。

关于android - flutter + FCM : onBackgroundMessage vs onMessageOpenedApp,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/72894846/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com