iOS:从Web下载非常大的数据的策略
我在iOS中从内存管理中苦苦挣扎,同时从网上下载相对较大的文件(例如350MB大小的video)。 这里的目标是下载这些类型的文件并将其存储在二进制数据字段的CoreData上。
目前我正在使用NSURLSession
。 dataTaskWithUrl
和NSURLSession
。 dataTaskWithRequest
方法来检索这些文件,但看起来这些方法不会处理内存使用等问题,它们只是一直在填充内存,直到它达到最大使用率,当我达到380MB~时,给我留下内存警告。
初始内存使用
记忆警告
在没有达到内存警告的情况下,从Web执行此类大型数据检索的最佳策略是什么? AlamoFire和其他库是否可以解决这个问题?
最好使用下载任务。
并将video作为文件保存到Document或Library目录中。
然后保存CoreData的相对路径
如果您使用下载任务
- 如果上次下载失败,您可以恢复
- 需要更少的内存
您可以尝试AFNetworking下载大文件。