AF网络未恢复下载



我正在使用AFNetworking将大文件下载到我的iPad应用程序中。

AFHTTPRequestOperation的一个实例用于下载此文件。以下是供参考的代码-

//request是要下载的文件的NSRequest对象AFHTTPRequestOperation*操作=[self-HTTPRequestOperationWithRequest:request成功:^(AFHTTPRequestOperation*操作,id responseObject){}失败:^(AFHTTPRequestOperation*操作,NSError*错误){}];//这里的路径变量是文件下载时放置的位置operation.outputStream=[NSOutputStream outputStreamToFileAtPath:pathappend:YES];//由于该类是AFHTTPClient的子类,因此该操作被添加到请求队列中[自排队HTTPRequestOperation:operation]

现在这里的问题是,当我尝试使用以下功能暂停并恢复下载时,pauseDownload功能正常工作,但恢复下载没有按应有的方式工作,下载似乎从一开始就开始了,正如我所期望的那样,它将从它离开的地方恢复。这里可能有什么问题?

-(void)pauseDownload{[操作暂停];}-(void)简历下载{【经营履历】;}

花了一段时间后,我想出了如何暂停和恢复下载。

AFNetworking有扩展名,其中之一是AFDownloadRequestOperation,主要用于处理大文件的暂停和恢复。因此,此处不使用AFHTTPRequestOperation,而是使用AFDownloadRequestOperation。以下是样本代码

//request是要下载的文件的NSRequest对象,targetPath是文件下载后的最终位置。不要忘记将should Resume设置为YESAFDownloadRequestOperation*操作=[[AFDownloadRequestOperation alloc]initWithRequest:requesttargetPath:targetPathshouldResume:YES];[操作setCompletionBlockWithSuccess:^(AFHTTPRequestOperation*操作,id responseObject){//汉德尔完井}失败:^(AFHTTPRequestOperation*操作,NSError*错误){//汉德尔故障}];[操作setProgressiveDownloadProgressBlock:^(NSInteger字节读取,long-long-totalBytesRead,long-lang-totalBytesExpected,long-leng-TotalBytes ReadForFile,long-long totalBytes ExpectedToReadForFile){//汉德尔进展}];//由于该类是AFHTTPClient的子类,因此该操作被添加到请求队列中[自排队HTTPRequestOperation:operation];//用于暂停下载-(void)贫困下载{[操作暂停];}//用于恢复下载-(void)简历下载{【经营履历】;}

最新更新