OGeek|极客世界-中国程序员成长平台

标题: ios - iPhone应用后台下载 [打印本页]

作者: 菜鸟教程小白    时间: 2022-12-12 13:17
标题: ios - iPhone应用后台下载

我正在制作一个接收持续更新(可能每天数百次)的应用,为了提供更好的用户体验,最好在后台下载这些更新。

看苹果的[ 1 ] 文档 我需要将后台模式设置为“后台获取”。深入探索,您可以阅读有关 application:performFetchWithCompletionHandler[ 2 ] 函数声明:

When this method is called, your app has up to 30 seconds of wall-clock time to perform the download operation and call the specified completion handler block... If your app takes a long time to call the completion handler, it may be given fewer future opportunities to fetch data in the future.

问题是我们的下载需要超过 30 秒的时间来下载,因此宁愿不面对 Apple 发送更新越来越少的愤怒,因此加剧问题!

那么,我能以某种方式做到这一点吗?

另外,我创建了一个粗略的实验,我创建了一个 NSTimer:scheduledTimerWithTimeInterval 来运行每分钟记录到控制台。这在模拟的 iPhone 上(已经运行了 30 分钟以上)以及当我将它放在手机上(一周以上)时都成功运行......为什么会这样!?



Best Answer-推荐答案


由于 Apple 30 年代的义务,这可能很难做到。他们决定这样做是为了最终防止发生大下载,以免耗尽电池和数据计划。

您必须确定您确实需要在后台下载这么多数据(因为它需要这么长时间),而且每天要下载数百次!

我的意思是,当您的应用在(长)后台周期后进入前台时,它可能不会更新,这是正常情况。因此,您需要在应用程序进入前台时进行更新;只需要一次更新。否则,您应该退后一步,重新考虑更新过程。

关于ios - iPhone应用后台下载,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27382933/






欢迎光临 OGeek|极客世界-中国程序员成长平台 (http://ogeek.cn/) Powered by Discuz! X3.4