我们有一位客户希望我们让我们的iOS应用程序检查每晚发布的新数据并下载(如果可用)。据我所知,只有当应用程序已经打开或者他们有人亲自接受通知或自己启动流程时才能实现这一点。
这是对的吗?我无法想象Apple希望允许启动应用程序并下载数据,而无需用户交互。
答案 0 :(得分:0)
是的,通常只有在应用程序实际在前台运行时才能在指定的时间下载数据,这是正确的。如果应用程序已经打开或用户从通知中打开它并不重要,关键是需要用户交互。因此,客户无法获得他们想要的东西。
从iOS7 +查看后台下载(获取),您可以在其中注册应用程序以在使用之前执行后台下载。 iOS完全可以控制它,它可能会选择运行应用程序而它可能不会。 iOS将监控您的应用程序通常由特定用户使用的时间,并且如果合适,它将允许应用程序在后台运行以在用户需要使用该应用程序之前进行一些下载。
特别是,您要查看setMinimumBackgroundFetchInterval:
并将UIBackgroundModes
密钥设置为Info.plist中的fetch
。
顺便说一下,这是基于您扩展信息的想法:
idleTimerDisabled
阻止应用在主要使用期间休眠并跟踪时间它并不完美,但它是一个近似值