我在文档中找不到关于这个主题的任何内容,所以我想我就像在这里一样 .
FCM文件指出:
当您的应用程序进入后台时,请断开与FCM的连接 .
但它没有说明原因 .
我想要做的是当用户与推送通知(可以是本地或远程)交互时从设备发送FCM上游消息 .
所以我有两个问题:
-
为什么Firebase建议我们在将应用程序发送到后台时断开与FCM的连接?
-
我可以在应用被杀死,暂停或在后台发送上游消息吗?
这种类型的功能,用户与通知交互,以及即时服务器响应,将成为我的应用程序的主要部分,我需要知道Firebase是否可以实现,否则我需要开始寻找另一个解 .
谢谢!
1 回答
由于我无法在线找到答案,我决定实施我的用例并观察行为 . 我找到了一些东西:
您不能依赖iOS中的后台执行,例如保持FCM连接 . 系统可以并且将在低内存状态下杀死您的应用 .
尝试在后台连接到FCM不起作用 . 下次打开应用程序时,后台发送的任何邮件都将排队等候 .
即使您的后台代码保证运行,例如在通知操作期间,FCM也无法连接 .
鉴于我的发现,我的问题的答案是:
因为您无法依赖iOS上的后台执行(请参阅上面的第一个项目符号) .
不,当下次打开应用程序并 Build 有效的FCM连接时,消息将排队等候 .