在使用Firebase Cloud Messaging
和我的数据发送自定义推送消息时,我遇到一些问题。
在iOS上,我创建了一个通知服务提供程序,用于控制每个传入的通知,但是我必须在向Firebase的推送请求中添加"notification"
和title
的{{1}}字段。如果没有body
字段,那么如果应用程序已关闭/被杀死,那么我将无法收到消息。
在Android上,我有"notification"
来接收消息(并且我可以决定如何处理),但是如果Firebase请求中存在FirebaseMessagingService
字段,则"notification"
不会收到消息,但通过“通知”中的FirebaseMessagingService
和title
自动显示通知。
我从body
找到了一些有关平台特定消息的文档
(When to use platform-specific keys)和我虽然仅针对iOS平台添加通知。我尝试了上面链接和此处Creating the Remote Notification Payload / Payload Key Reference
在一些我尝试发送的JSON示例下面,但我总是收到错误Firebase
(我尝试过使用字段InvalidParameters: Invalid notification payload
,apns
,payload
的所有可能性,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?如果是这样-怎么办?