当收到 IOS 13 SDK 的通知时,啥是推送工具包的替代方案来处理终止状态

Posted

技术标签:

【中文标题】当收到 IOS 13 SDK 的通知时,啥是推送工具包的替代方案来处理终止状态【英文标题】:What is an alternative of push kit to do processing on killed state when notification is received for IOS 13 SDK当收到 IOS 13 SDK 的通知时,什么是推送工具包的替代方案来处理终止状态 【发布时间】:2019-10-18 06:13:31 【问题描述】:

ios13 上,除了 callKit 之外不能使用 push kit。我想像 WhatsApp 一样对终止状态进行处理,并让我的应用程序保持最新状态以获得良好的用户体验。对已终止状态进行处理的解决方案可能是什么。

为了实现这一点,我尝试了 UserNotification 框架,但它不允许在终止状态下运行自定义代码。低于 IOS 13 的推送套件可以正常工作,但在 IOS 13 上无法正常工作。

应用程序应该能够像 WhatsApp 一样对终止状态执行任何操作,以使应用程序数据保持最新。对于 IOS 13,当收到 pushKit 通知时,应用程序在终止状态时崩溃。

【问题讨论】:

【参考方案1】:

您是否尝试过 UNNotificationServiceExtension? 您可以获得大约 30 秒的远程通知执行时间,只要:

    远程通知配置为显示警报。 远程通知的 aps 字典包含值设置为 1 的 mutable-content 键。

https://developer.apple.com/documentation/usernotifications/unnotificationserviceextension?language=objc

【讨论】:

以上是关于当收到 IOS 13 SDK 的通知时,啥是推送工具包的替代方案来处理终止状态的主要内容,如果未能解决你的问题,请参考以下文章

当应用收到通知时,IOS 向 HTTP 服务器发送请求

收到推送通知时 iOS 13 崩溃?

当应用程序处于非活动状态并运行代码时,Swift iOS 应用程序会收到推送通知

Nodejs 静默推送通知在 iOS 13 中不起作用

iOS 13 在后台没有收到 VoIP 推送通知

应用程序被杀死时未收到 IOS 13 VOIP 推送通知