Пользовательские push-уведомления, не получаемые с использованием firebase - PullRequest
0 голосов
/ 11 января 2019

Я реализовал приложение с настраиваемым уведомлением, используя firebase. Я могу получать пользовательские уведомления с помощью токена устройства от отправителя, pushtry, но если я отправлю ту же полезную нагрузку, используя идентификатор FCM от почтальона, я не получу уведомление.

Я пробовал и другие полезные нагрузки, но только получал уведомление по умолчанию, а иногда звучал только для некоторых полезных нагрузок, но не получал пользовательские.

Я использую такие полезные нагрузки для толкателя и pushtry: (получил правильные уведомления)

{ 
"aps":{ 
"alert":"dasdas",
"badge":1,
"sound":"default",
"category":"CustomSamplePush",
"mutable-content":"1"
},
"urlImageString":"https://res.cloudinary.com/demo/image/upload/sample.jpg"
}

та же полезная нагрузка, не работающая на базе огня

Есть ли какая-то полезная нагрузка для этого и есть ли необходимость вносить изменения в мой код IOS?

спасибо заранее.

Ответы [ 2 ]

0 голосов
/ 24 января 2019

Для пользовательских уведомлений с использованием firebase полезная нагрузка должна быть такой:

{
    "to": "FCM ID",
    "content_available":true,
    "mutable_content": true,
    "data": {
        "message": "Offer!",
        "urlImageString":"https://res.cloudinary.com/demo/image/upload/sample.jpg",
    },
    "notification": {
        "body": "Update Your App New Version is available",
        "sound": "default",
        "click_action": "Your app category from notification plist"
    }
}
0 голосов
/ 11 января 2019

Ваша полезная нагрузка должна быть такой:

{
    "to": "APA91bHun4MxP5egoKMwt2KZFBaFUH-1RYqx...",
    "notification": {
        "body": "dasdas",
        "title": "Portugal vs. Denmark",
        "icon": "myicon"
    },
    "data": {
        "Nick": "Mario",
        "Room": "PortugalVSDenmark"
    }
}

Наличие всех данных под aps не вызывает никаких уведомлений в iOS, даже если Firebase возвращает успешный запрос, потому что перенаправленная полезная нагрузка APNS неверна. Кроме того, надлежащий способ должен заключаться в том, чтобы следовать рекомендациям полезной нагрузки GCM или FCM, а именно использовать уведомление для сообщения уведомления и данные для пользовательских пар ключ / значение.

Когда FCM отправляет данные в APNS, они преобразуют их в полезную нагрузку APN. Устанавливает значения уведомлений в теге aps, т.е.

{
    "aps" : {
        "alert" : {
            "title" : "Portugal vs. Denmark",
            "body" : "Portugal vs. Denmark",
        }
    },
    "Nick" : "Mario",
    "Room" : "PortugalVSDenmark"
}
...