AFDownloadRequestOperation 2.0.1

AFDownloadRequestOperation 2.0.1

测试已测试
语言语言 Obj-CObjective C
许可 MIT
发布最新发布2015年3月

由 . 维护



  • Peter Steinberger

AFNetworking 的渐进式下载操作。我编写这个是为了支持在我的商业 iOS PDF 框架 PSPDFKit 中大型 PDF 的下载,但它适用于任何文件类型。

虽然 AFNetworking 已经支持文件下载,但这个类提供了额外的支持,以便恢复部分下载,使用临时目录,并具有一个特殊的块来帮助计算正确的下载进度。

AFDownloadRequestOperation 在选择正确的目标路径方面很智能。如果您设置了文件夹,则将使用下载 URL 的文件名,否则使用已设置的文件名。

AFDownloadRequestOperation 还将文件操作期间发生的任何 NSError 传递给错误块。

对于部分恢复的文件,进度代理需要额外的信息。服务器可能只有几个 totalByesExpected,但我们想显示包含先前进度的正确值。

    [pdfRequest setProgressiveDownloadProgressBlock:^(NSInteger bytesRead, long long totalBytesRead, long long totalBytesExpected, long long totalBytesReadForFile, long long totalBytesExpectedToReadForFile) {
        self.downloadProgress = totalBytesReadForFile/(float)totalBytesExpectedToReadForFile;
    }];

临时文件夹将在首次访问时自动创建,但可以更改。默认为 `tmp/Incomplete/`。系统将定期清理 temp 目录;因此,如果间隔时间不长,则恢复操作才会成功。

AFNetworking

针对 iOS 6+、AFNetworking 2.0 进行了测试,并使用 ARC。

创建者

Peter Steinberger @steipete

许可

AFDownloadRequestOperation 在 MIT 许可下可用。有关更多信息,请参阅 LICENSE 文件。