是否可以在后台保持套接字连接,以便能够随时推送新数据并提醒用户?
答案 0 :(得分:19)
这个问题的答案肯定是肯定的。如果您处于后台状态,则可以保持连接打开并处理来自服务器的消息。
不幸的是,这里的复杂性在于您无法控制应用程序所处的状态:
显然,这里的诀窍是如何尽可能长时间地保持后台状态。有几种方法可以做到这一点:
所以这些方法并非没有自己的问题(在商店获得批准就是其中之一),因此我倾向于同意其他答案,使用push notifications可能是通知用户的最佳方法。使用notification improvements in iOS5,这将成为未来最好的用户体验。
答案 1 :(得分:1)
您可以在应用关闭后约15分钟内在后台保持套接字连接活动(或执行任何其他操作)。如果您的应用程序适合其支持的类别之一,Apple还支持更专业的后台处理模式(特别是音频,voip和位置)。请参阅here。
如果您想要无限期地发送用户通知,则需要使用Apple Push Notification Service。这允许您的应用在未运行时继续接收通知,并且由于一次只有一个连接到APN服务,因此节省了资源。
答案 2 :(得分:0)
您绝对可以使用本地和推送通知提醒用户。 据我所知,您可以在有限的时间内保持连接打开。
查看here了解更多详情。