Flutter / Firebase push notifications not fired when app is closed

694

As per your data send with fcm is sending only data object not notification object as per the fcm to wakeup it self you need to send notification object along with data object.

https://firebase.google.com/docs/cloud-messaging/concept-options enter image description here

Share:
694
3squad
Author by

3squad

Java, Javascript, Ionic, IBM

Updated on November 26, 2022

Comments

  • 3squad
    3squad over 1 year

    I am using firebase messaging to send notifications to users in flutter application, and everything is working fine when I am sending notification from postman (notification always shows), but then when I want to send the same notification from my backend server, notification not showing on device. On server logs I can see that notification was send with success like this:

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

    So it means it was correctly send to messaging services, but push notification not firing on device.

    Sometimes when I open app (going to foreground of application) then notification somehow shows, but I need users to see notification always, especially when their app is closed.

    I am sending notification with high priority so this is not an issue.

    Any help, what could be potential issue with this?

    My request to 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"
            }
        }
    }
    
  • TechHelper
    TechHelper about 2 years
    but if we send notification object along with data object then it will show 2 notifications. One for notification by FCM sdk and one by the code we have written to handle data notification.
  • Hardik Mehta
    Hardik Mehta about 2 years
    If you are getting notification object in notification then you have to comment out your code for handle this as its automatically handled by system so.
  • TechHelper
    TechHelper about 2 years
    But what if I want to handle that custom data myself and not automatically by FCM SDK?
  • Hardik Mehta
    Hardik Mehta about 2 years
    then you have to send only data object not notification object in push then you can handle by self
  • TechHelper
    TechHelper about 2 years
    I want both the things 1. Notification should work always even after app is killed 2. I can not send both notification and data object. I can only send data object.
  • TechHelper
    TechHelper about 2 years
    I think using priority is the way to go as mentioned here: stackoverflow.com/questions/48451761/…