我正在使用 FCM
为展位平台、iOS
和 Android
中的项目发送通知。以下是我发送的有效载荷
:
{
"to":"user_key",
"priority":"high",
"content_available":true,
"mutable_content":true,
"data":{
"body":"test"
}
}
阅读Firebase
文档后,通过FCM
发送notification
和data payload
时的行为是:
iOS
- 如果
notification
->body
未定义,您将看不到横幅。
安卓
- 如果您只传递
数据负载
,它将在后台
时接收数据。 - 如果您传递
notification_payload
,系统托盘
会处理它。
事情是:
对于 Android
我想避免传递 notification_payload
以便在应用程序处于后台时接收数据(这样 onMessageReceived() 将被调用)。但是,我不会在 iOS
中收到通知
。
感谢帮助/建议。
最佳答案
服务器应该为 IOS 和 Android 推送请求使用不同的 json 结构。例如:
安卓:
[data] => Array
(
[title] => Test
[message] => Message
)
IOS:
[notification] => Array
(
[title] => Title
[body] => Body
[sound] => 1
[vibrate] => 1
)
[data] => Array
(
[custom_key] => custom_value
)
您可以根据您的任务对其进行编辑。
关于android - FCM Firebase 推送通知 Android/iOS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53259518/