Ios 应用程序被终止时存储挂起的操作

Ios 应用程序被终止时存储挂起的操作,ios,iphone,nsoperation,appdelegate,nsoperationqueue,Ios,Iphone,Nsoperation,Appdelegate,Nsoperationqueue,我正在开发一个大文件的下载队列。我管理NSOperationQueue中正在下载或等待下载的nsoperation,并将它们及其密钥存储在NSMutableDictionary中 我想开发与播客应用程序相同的功能。我的意思是,如果用户正在下载一些播客并完全关闭应用程序,如果他/她重新启动应用程序,操作将继续下载 那么,它们如何存储挂起的操作呢?我已尝试使用userDefaults存储挂起的NSOperations的NSDictionary,但不可能这样做,因为NSOperation未实现NSCo

我正在开发一个大文件的下载队列。我管理
NSOperationQueue
中正在下载或等待下载的
nsoperation
,并将它们及其密钥存储在
NSMutableDictionary

我想开发与播客应用程序相同的功能。我的意思是,如果用户正在下载一些播客并完全关闭应用程序,如果他/她重新启动应用程序,操作将继续下载

那么,它们如何存储挂起的操作呢?我已尝试使用
userDefaults
存储挂起的
NSOperations
NSDictionary
,但不可能这样做,因为
NSOperation
未实现
NSCopying

所以,我想知道哪一种是处理这种行为的最佳方式

有什么想法吗


谢谢大家!

我认为您可以创建一个实体来存储下载进度,同时将文件写入光盘。当您从网络层下载块时,更新实体的进度,然后在applicationWillTerminate回调中将进度存储回数据库。然后,当您再次打开应用程序时,您可以根据下载进度从网络层请求下一个块