在生命周期之间恢复iOS上的下载

时间:2018-01-11 08:51:26

标签: ios background-process nsurlsession download-manager nsurlsessiondownloadtask

我正在尝试确保如果我在iOS上的后台下载由于某种原因停止(应用程序被系统杀死,用户从多任务屏幕停止,崩溃?)将在下一个生命周期中继续。 到目前为止,我发现 NSURLSession 的文档清楚地区分了两个明确的用例:系统终止(在这种情况下,下载将在后台顺利进行,系统将唤醒应用程序时下载完成)或被用户杀死(哪种情况一切都丢失了 - 或者是它?):

  

如果iOS应用程序被系统终止并重新启动,则应用程序可以使用相同的标识符来创建新的配置对象和会话,并检索终止时正在进行的传输的状态。此行为仅适用于系统正常终止应用程序。如果用户从多任务屏幕终止应用程序,系统将取消所有会话的后台传输。此外,系统不会自动重新启动用户强制退出的应用程序。 用户必须明确重新启动应用,然后才能重新开始传输。

这是让我烦恼的路线。什么转移可以重新开始?我以为他们迷路了。它是指我可以开始另一个下载会话吗?

另外,由于网络连接类型的原因,我无法找到系统暂停的下载会发生什么信息。例如,如果allowsCellularAccess设置为false,并且我的应用程序被系统终止,那么当它移动到允许的网络时它是否仍会继续?

0 个答案:

没有答案