Android 使用 Flutter 和 FCM 终止应用程序时设备未收到通知消息
Android device not receiving notification message when the app is terminated using Flutter and FCM
我正在使用 Flutter 开发一个应用程序,我正在使用带有 firebase_messaging Flutter 插件的 FCM 实现推送通知:
https://pub.dartlang.org/packages/firebase_messaging
关于这个插件的Readme.md,它说当Android设备在应用程序终止时收到数据消息,消息将丢失,但是当设备收到通知消息时, 该消息将显示在应用程序托盘上,无论该应用程序已终止还是仅在后台运行。
我已经实现了这个插件,但它的行为并不像 Readme.md 描述的那样。当应用程序终止时,通知消息在我的 android 设备上丢失。
这是我发送到设备的示例负载:
var payload = {
notification: {
title: `message from somebody`,
body: `message text here`,
}
}
我可能做错了什么?我在有效负载中遗漏了什么,还是其他什么?
您是否尝试过使用 Firebase 控制台发送消息。使用 Firebase 控制台发送测试消息可能是值得的。
这样您就可以消除有效载荷出错的可能性。
要验证的另一件事是在应用程序中实施 onMessage
onResume
和 onLaunch
,并在您的消息中包含自定义数据键值对 click_action: FLUTTER_NOTIFICATION_CLICK
。
最后一件事是检查 google-services.json
是否放置在正确的文件夹 android/app
中,并检查 android/build.gradle
、android/app/build.gradle
是否已正确修改。
我希望我能提供一点帮助。让我知道这是否有效。
当应用程序在 android 中终止且仅当应用程序打开或在后台时,firebase_messaging 包不支持接收数据消息。
当应用程序在 android 中终止时,它是关于数据消息接收的说法:
插件不支持,消息丢失。
关于通知,通知被传送到系统托盘。当用户点击它打开应用程序时,如果 click_action: FLUTTER_NOTIFICATION_CLICK 已设置,onLaunch 会触发。
看看接收消息中的 table :
https://pub.dartlang.org/packages/firebase_messaging#-readme-tab-
我正在使用 Flutter 开发一个应用程序,我正在使用带有 firebase_messaging Flutter 插件的 FCM 实现推送通知:
https://pub.dartlang.org/packages/firebase_messaging
关于这个插件的Readme.md,它说当Android设备在应用程序终止时收到数据消息,消息将丢失,但是当设备收到通知消息时, 该消息将显示在应用程序托盘上,无论该应用程序已终止还是仅在后台运行。
我已经实现了这个插件,但它的行为并不像 Readme.md 描述的那样。当应用程序终止时,通知消息在我的 android 设备上丢失。
这是我发送到设备的示例负载:
var payload = {
notification: {
title: `message from somebody`,
body: `message text here`,
}
}
我可能做错了什么?我在有效负载中遗漏了什么,还是其他什么?
您是否尝试过使用 Firebase 控制台发送消息。使用 Firebase 控制台发送测试消息可能是值得的。 这样您就可以消除有效载荷出错的可能性。
要验证的另一件事是在应用程序中实施 onMessage
onResume
和 onLaunch
,并在您的消息中包含自定义数据键值对 click_action: FLUTTER_NOTIFICATION_CLICK
。
最后一件事是检查 google-services.json
是否放置在正确的文件夹 android/app
中,并检查 android/build.gradle
、android/app/build.gradle
是否已正确修改。
我希望我能提供一点帮助。让我知道这是否有效。
当应用程序在 android 中终止且仅当应用程序打开或在后台时,firebase_messaging 包不支持接收数据消息。
当应用程序在 android 中终止时,它是关于数据消息接收的说法:
插件不支持,消息丢失。
关于通知,通知被传送到系统托盘。当用户点击它打开应用程序时,如果 click_action: FLUTTER_NOTIFICATION_CLICK 已设置,onLaunch 会触发。
看看接收消息中的 table : https://pub.dartlang.org/packages/firebase_messaging#-readme-tab-