如果应用程序从任务管理器中被杀死,NSUrlSession是否继续文件传输?

Kru*_*lur 8 objective-c ios nsurlsession nsurlsessiondownloadtask

我已经尝试过网上的各种样本(最后一个是这个样本),以便更好地理解NSUrlSession.

我希望看到的内容:即使触发它们的应用程序被杀死(例如用户通过任务管理器),文件下载仍将继续.然而,这似乎并没有发生.

如果应用程序被终止,这是配置问题还是后台文件传输不起作用?我认为整个想法是iOS将重启应用程序.

Phi*_*iso 9

如果系统杀死您的应用并且您的后台会话具有有效下载,则您的下载将继续,系统将在下载完成后启动您的应用.但是,如果用户强制退出您的应用,则会取消所有任务.

backgroundSessionConfigurationWithIdentifier的文档:

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