我对 iOS 上的静默通知有疑问。
当我的应用程序在后台运行时,我没有收到 FCM 发送的静默通知。但如果我尝试直接发送到 APNS,则通知已成功接收。
这是发送到 FCM 的 JSON:
{
"to" : "<token>",
"priority": "high",
"content_available": true,
"data" : {
"<key>" : "<string>",
"<key2>" : "<string>"
}
这是直接发送到 APNS 的 JSON:
{
"aps": {
"content-available": 1
},
"<key>": "<string>",
"<key>": "<string>"
}
我已经尝试删除“priority”键,因为我看到有人说如果“content_available”已经设置,我不应该设置优先级。它没有用。
- 我在 XCode > Capabilities 中启用了“推送通知”。
- 我在 XCode > Capabilities 的后台模式中选中了“远程通知”。
- 当应用处于前台时,FCM 通知工作正常,有时当应用处于后台时。
最佳答案
删除"notification"键值对并添加"content_available": true
看起来像这样
{
"to" : "...",
"priority": "high",
"content_available": true,
"data" : {
....
}
}
这应该使其成为静默 APNS,您需要使用相应的 APNS 委托(delegate)方法进行处理。
你需要通过委托(delegate)来处理这个 有关详细信息,请参阅此 firebase 文档:https://firebase.google.com/docs/cloud-messaging/concept-options
关于ios - 适用于 iOS 的 Firebase FCM 静默推送通知,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40807397/