首页 > 解决方案 > firebase 不总是通过 APNs 发送通知吗?

问题描述

我注意到firebase 文档说明了以下内容:

如果提供了通知有效负载,或者对于发往 iOS 设备的消息, content_available 选项设置为true,则消息通过 APNs 发送,否则通过 FCM 连接服务器发送

有人可以解释一下这是什么意思吗?

我认为所有发送到 iOS 设备的推送通知,首先发送到Apple,然后由 Apple 转发到相应的设备,但这里暗示他们直接向设备发送消息?

当应用程序在 iOS 上关闭时,这甚至可能吗?

我很困惑,谢谢。

标签: iosfirebaseapple-push-notificationsfirebase-cloud-messagingfirebase-notifications

解决方案


当应用程序在前台时,FCM 可以直接连接而不是通过 APNs 来获取data类型消息。正如您所期望的那样,在后台发送的消息通过 APNs 传递。如果您愿意, 您实际上可以查看FCM 客户端的来源!

您可以控制这是否与shouldEstablishDirectChannel属性一起使用。

从发送的角度来看,您不必太担心这一点 - 它作为 FCM 服务的一部分被透明地处理,基于消息的类型以及是否有客户端连接。


推荐阅读