使用杀死/刷卡的应用程序处理 iOS 推送通知的正确方法

问题描述

在 XCode 11 发布后,Apple 限制了 PushKit 通知。现在它只能用于通知来电。因此,如果应用程序不通过 CallKit 报告来电,它将崩溃。

问题是如何组织推送通知传递到消息应用程序,即使它被杀死。

我发现了一些可以使用的要点 - 具有指定推送消息内容(content-available=1、apns-priority=5 等)的“静通知”(不是 PushKit)。应用可以处理推送通知,运行一些业务逻辑来准备消息数据并显示 UNNotification 和/或更新应用徽章。

但是有很多关于 iOS 限制的帖子和主题,以将推送通知传递给被用户杀死的应用程序 - 操作系统只是不启动应用程序。

还有另一个情节转折 - Telegram iOS 源代码显示完全相同的应用程序逻辑 - PushKit 通知仅针对来电,认 PushNotifications 则针对所有其他场景(按来源)。您可以终止 Telegram 应用程序,但您始终会收到传入的消息通知 - 该应用程序以某种方式启动并正在处理推送通知(解密、加载媒体等)。

它是如何运作的?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)