Firebase的自定义数据推送消息,具有特定于平台的通知问题

时间:2018-12-12 23:12:12

标签: android ios firebase firebase-cloud-messaging

在使用Firebase Cloud Messaging和我的数据发送自定义推送消息时,我遇到一些问题。

在iOS上,我创建了一个通知服务提供程序,用于控制每个传入的通知,但是我必须在向Firebase的推送请求中添加"notification"title的{​​{1}}字段。如果没有body字段,那么如果应用程序已关闭/被杀死,那么我将无法收到消息。

在Android上,我有"notification"来接收消息(并且我可以决定如何处理),但是如果Firebase请求中存在FirebaseMessagingService字段,则"notification"不会收到消息,但通过“通知”中的FirebaseMessagingServicetitle自动显示通知。

我从body找到了一些有关平台特定消息的文档 (When to use platform-specific keys)和我虽然仅针对iOS平台添加通知。我尝试了上面链接和此处Creating the Remote Notification Payload / Payload Key Reference

中描述的几种方法

在一些我尝试发送的JSON示例下面,但我总是收到错误Firebase(我尝试过使用字段InvalidParameters: Invalid notification payloadapnspayload的所有可能性,aps

alert

{
    "to": "xyz................", //single device with android or ios
    "mutable_content": true,
    "data": { "field1": "value1" [.......] },
    "apns": {
    "payload": {
        "title": "Some message title",
        "body": "Some message body",
        "sound": "default"    
    }
}

目的是在我的应用程序中接收{ "to": "xyz................", //single device with android or ios "mutable_content": true, "data": { "field1": "value1" [.......] }, "apns": { "payload": { "aps": { "title": "Some message title", "body": "Some message body", "sound": "default" } } } 并决定如何处理-根据传入的数据,我想显示自己的通知或在应用程序中进行一些自定义操作。

是否甚至可以通过通知/警报将特定于平台的消息发送到iOS,而无需将消息发送到Android?如果是这样-怎么办?

0 个答案:

没有答案