iOS:从Web下载非常大的数据的策略

我在iOS中从内存管理中苦苦挣扎,同时从网上下载相对较大的文件(例如350MB大小的video)。 这里的目标是下载这些类型的文件并将其存储在二进制数据字段的CoreData上。

目前我正在使用NSURLSessiondataTaskWithUrlNSURLSessiondataTaskWithRequest方法来检索这些文件,但看起来这些方法不会处理内存使用等问题,它们只是一直在填充内存,直到它达到最大使用率,当我达到380MB~时,给我留下内存警告。

初始内存使用

记忆警告

在没有达到内存警告的情况下,从Web执行此类大型数据检索的最佳策略是什么? AlamoFire和其他库是否可以解决这个问题?

最好使用下载任务。

并将video作为文件保存到DocumentLibrary目录中。

然后保存CoreData的相对路径

如果您使用下载任务

  • 如果上次下载失败,您可以恢复
  • 需要更少的内存

您可以尝试AFNetworking下载大文件。