关闭应用程序时不会触发 Flutter / Firebase 推送通知

Flutter / Firebase push notifications not fired when app is closed

我正在使用 firebase 消息向 flutter 应用程序中的用户发送通知,当我从邮递员发送通知时一切正常(通知始终显示),但是当我想从我的后端发送相同的通知时服务器,设备上未显示通知。在服务器日志上,我可以看到通知已成功发送,如下所示:

{
    "multicast_id": XXXXXXXXXXXXX,
    "success": 1,
    "failure": 0,
    "canonical_ids": 0,
    "results": [
        {
            "message_id": "XXXXXXXXXXXXX"
        }
    ]
}

所以这意味着它已正确发送到消息服务,但推送通知未在设备上触发。

有时当我打开应用程序(转到应用程序前台)时,通知会以某种方式显示,但我需要用户始终看到通知,尤其是当他们的应用程序关闭时。

我正在发送高优先级通知,所以这不是问题。

任何帮助,这可能是什么潜在问题?

我对 FCM 的请求:

POST: https://fcm.googleapis.com/fcm/send Authorization: key=xxxx_MY_KEY_XXXXX Content-Type: application/json

{
    "to": "xxxxxMY_FCM_TOKEN_xxxxxx",
    "mutable_content": true,
    "content_available": true,
    "priority": "high",
    "data": {
        "content": {
            "id": 106,
            "channelKey": "remote_chann",
            "title": "Hello",
            "body": "test",
            "notificationLayout": "Messaging"
        }
    }
}

根据您使用 fcm 发送的数据仅发送数据对象而不是根据 fcm 发送通知对象以自行唤醒您需要发送通知对象和数据对象。

https://firebase.google.com/docs/cloud-messaging/concept-options