在查看disconnect()方法及其描述时,它会在文档中说明以下内容
断开当前的FIRMessaging数据连接。这将停止任何连接到FIRMessaging的尝试。在已断开连接的客户端上调用此操作是无操作。
但是看看shouldEstablishDirectChannel属性
设置为YES时,Firebase Messaging将自动建立到FCM服务器的基于套接字的直接通道。如果要在预置应用中发送上游消息或接收非APNS,仅数据消息,则只需启用此功能。默认为NO。
看起来他们并没有做同样的事情,但我可能错了。谁能为我澄清一下这个?
所以我发现的是这个。
不再需要disconnect()和connect()函数。您可以将bolean变为true,然后进行连接。
我正在把头靠在墙上,因为如果那个错误警告了。
func applicationDidEnterBackground(_ application: UIApplication) {
Messaging.messaging().disconnect()
print("Disconnected from FCM.")
}
至:
func applicationDidEnterBackground(_ application: UIApplication) {
Messaging.messaging().shouldEstablishDirectChannel = false
print("Disconnected from FCM.")
}
通过将bolean变为true,连接也是如此。因为现在有解释这种变化的地方,我应该更加努力。我还在一台设备上对此进行了测试,我仍在收到推送通知。
所以我发现的是这个。
不再需要disconnect()和connect()函数。您可以将bolean变为true,然后进行连接。
我正在把头靠在墙上,因为如果那个错误警告了。
func applicationDidEnterBackground(_ application: UIApplication) {
Messaging.messaging().disconnect()
print("Disconnected from FCM.")
}
至:
func applicationDidEnterBackground(_ application: UIApplication) {
Messaging.messaging().shouldEstablishDirectChannel = false
print("Disconnected from FCM.")
}
通过将bolean变为true,连接也是如此。因为现在有解释这种变化的地方,我应该更加努力。我还在一台设备上对此进行了测试,我仍在收到推送通知。