(iOS)运行 后台下载任务

(iOS)Running download task in background

你好,如果我在 ios 中使用 NSUrlsession 后台 SessionConfiguration,我可以 运行 无限时间(比如 1 小时)的下载任务。或者它会在 3 分钟后被杀死吗?

是也不是。您可以使用 NSURLSession(或 URLSession 在后台将下载设置为 运行,因为它在 Swift 3 中被调用。)

我已经有一段时间没有使用它了,但这是我记得的:

当您这样做时,系统会接管您的下载。您的应用程序可以在前台、后台或根本不 运行ning,但下载仍会继续。如果您的应用程序在下载完成后不再 运行ning,您的应用程序将重新启动。您需要在您的应用委托中实现 application:handleEventsForBackgroundURLSession:completionHandler: 方法。如果您的应用未 运行ning 时下载完成,请参阅有关该方法的文档,了解该怎么做。

因为系统接管了管理后台下载的工作,所以它不会让您的应用程序在后台保持活动状态。它遵循与正常情况相同的背景规则。 (如果用户切换应用程序,它会很快暂停,之后可以随时终止。)