Firebase 消息不适用于 iOS 中的“数据”消息
Posted
技术标签:
【中文标题】Firebase 消息不适用于 iOS 中的“数据”消息【英文标题】:Firebase messaging not working for "data" messages in iOS 【发布时间】:2016-10-12 17:00:24 【问题描述】:我有一个在 ios 9.3.5 上运行的应用程序。当我的应用程序处于前台或后台时,我需要能够向它发送推送通知。我实际上不需要包含任何数据,我只需要 ping 应用程序,它就会“phone home”。所以我不需要/不希望用户看到任何通知。
由于该公司已经在他们的 android 应用中使用 Firebase,我已经在 iOS 应用中进行了设置。如果我使用有效负载中的notification
键向https://fcm.googleapis.com/fcm/send
发送消息,则它会在iPhone 上收到。当我改用data
键尝试它时,我什么也得不到。在这两种情况下,我都会收到来自 POST 的 success
响应。我已经实现了以下回调:
application:didReceiveRemoteNotification:
userNotificationCenter:willPresentNotification:withCompletionHandler:
applicationReceivedRemoteMessage:(FIRMessagingRemoteMessage *)remoteMessage
使用data
键发送消息时不会调用这些。
编辑: 这是我正在使用的有效负载。
“数据”: “消息”:“电话之家”, , “到”:“xxxxx”
在进行更多测试后,当应用程序处于前台而不是后台时,我似乎收到了该消息。当我切换到前台时,application:didReceiveRemoteNotification:
会被调用。
编辑 2:添加了 content_available
,这就成功了。谢谢!
"to" : "xxxx", "content_available" : true
【问题讨论】:
猜猜我的建议奏效了。我删除了我的评论并对其进行了一些修改并将其添加为答案。 【参考方案1】:如果没有示例有效负载,建议有点困难,但是,请尝试使用priority
参数作为high
或content_available
到true
。
【讨论】:
以上是关于Firebase 消息不适用于 iOS 中的“数据”消息的主要内容,如果未能解决你的问题,请参考以下文章
Flutter Firebase 动态链接不适用于新的 ios 应用安装