【发布时间】:2015-04-27 22:56:08
【问题描述】:
我目前在 iOS 中遇到推送通知问题。
我的应用收到包含标识符的静默推送通知。然后使用此标识符从创建本地通知的远程服务器获取数据。
据我所知,如果用户强制退出应用程序(即通过双击主页按钮并滑动关闭应用程序),则静默推送通知不会传递到 didReceiveRemoteNotificationAppDelegate 类 [1] [2] 中的 /em> 方法,从而阻止应用程序进行任何类型的处理。
我对处理上述情况进行了大量研究。但是,无法找到明确的答案,并希望有人可以帮助我或为我指明正确的方向。
TLDR:当用户强制退出我的应用,但我仍需要处理静默通知时,我该怎么办?
更多信息:
我的应用只需要支持iOS8+。
通知负载
如果通知到达时目标应用程序未运行,则会播放或显示警报消息、声音或徽章值。如果应用正在运行,系统会将通知作为 NSDictionary 对象传递给应用委托。
【问题讨论】:
-
简短回答:在这种情况下您无能为力。在我看来,如果用户强行退出一个应用程序,他无权期望该应用程序能够正常运行。
-
强制退出是一种杀死表现不佳的应用程序的方法,这可能是它阻止处理通知的原因。不幸的是,一些在线资源仍然告诉用户关闭所有应用程序,尽管这是不必要的。
-
疯狂的是,我看到很多人强制关闭应用程序以节省电量。甚至是开发人员。
标签: ios notifications apple-push-notifications