iOS – 当应用程序强制退出时由用户处理静默推送通知

我目前在iOS中面临推送通知的问题。

我的应用收到包含标识符的静默推送通知。 然后使用该标识符从创build本地通知的远程服务器获取数据。

据我所知,如果用户强制退出一个应用程序(即通过双敲主页button,并滑动closures应用程序),然后静默推送通知不会传递到AppDelegate类[1中的didReceiveRemoteNotification方法] [2],从而阻止应用程序进行任何types的处理。

在处理上述情况方面,我做了大量的研究。 然而,无法find一个明确的答案,并希望有人能帮助我或指出我在正确的方向。

TLDR:当用户强制退出我的应用程序时我应该怎么做,但是我仍然需要处理一个无声的通知?

更多信息:
我的应用程序只需要支持iOS8 +。

[1] https://developer.apple.com/library/mac/documentation/NetworkingInternet/Conceptual/RemoteNotificationsPG/Chapters/ApplePushService.html#//apple_ref/doc/uid/TP40008194-CH100-SW1

通知有效负载
如果通知到达时目标应用程序未运行,则播放或显示警报消息,声音或徽章值。 如果应用程序正在运行,则系统将通知作为NSDictionary对象传递给应用程序委托。

[2] https://stackoverflow.com/a/19202487/2472819

以前在iOS 7和之前,一旦用户强制退出应用程序,它将无法运行和后台任务,包括位置监控,推送通知处理与content-available:1等。

但问题是这种行为没有logging。 原因是,它可能会改变一个新的iOS更新和苹果不想太早钉钉子。 和iOS 8一样, PushKit被引入,应该能够处理强制退出场景。 请查看本教程以获取详细信息: https : //zeropush.com/guide/guide-to-pushkit-and-voip