firebase - 在 Flutter 中使用 Firebase Messaging ^8.0.0-dev.8 收到通知时如何运行函数?

标签 firebase flutter push-notification firebase-cloud-messaging android-notifications

您好,我正在使用 Flutter 构建我的应用程序,每当收到新通知时,我都需要显示警报。
我一直在用firebase_messaging 7.0.3但我遇到了 onBackgroundMessage 的错误.快速谷歌搜索帮助我发现我遇到的错误尚未修复。然而,其中一位开发人员在 20 天前发布了关于解决该问题的新版本软件包的更新。
新版本删除了旧的 onMessage 处理程序并引入了新的处理程序。
现在他们获得了返回流的新事件处理程序,但无法通过使用.listen()功能。每当我收到通知时,都会收到一个这样的消息:D/FLTFireMsgReceiver(22032): broadcast received for message打印在控制台中,但代码在 .listen()不会被执行。
Here是指向 Firebase Flutter 文章的链接,该文章是使用新版本软件包的指南。
这是我的代码:

...
FirebaseMessaging.onMessage.listen((event) {
 // do something
});
FirebaseMessaging.onMessageOpenedApp.listen((event) {
 // do something
});
FirebaseMessaging.onBackgroundMessage((message) {
 // do something
 return;
 }
...

最佳答案

我发现让事件触发的解决方案是始终调用:

await FirebaseMessaging.instance.getToken();
紧随其后
await Firebase.initializeApp();
一旦我调用它,FirebaseMessaging.onMessage.listen按预期捕获事件。

关于firebase - 在 Flutter 中使用 Firebase Messaging ^8.0.0-dev.8 收到通知时如何运行函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64947747/

相关文章:

arrays - 为什么我无法检查 Flutter 列表是否为空?

java - 向特定用户发送解析推送通知

android - 如何检查用户是否刚刚在 Firebase 中首次登录 Google

android - firebase 中可以有包含搜索查询吗?

dart - 将小部件放在列中会使 RenderIndexedStack 对象在布局期间被赋予无限大小

ios - 在ios中处理远程通知接收

ios - swift 3 - 推送通知的本地化不起作用

android - 从 FireBase 获取 JsonArray

javascript - Firebase:如何从存在特定键的数据中检索记录?

android - 无法从 Bloc Flutter 中听到新的值(value)