我有一个iOS应用程序,同时提供多个书籍下载,它实际上是一个读者应用程序。之前我使用 AFDownloadRequestOperation 下载了这本书。当用户在应用程序崩溃后或用户强制退出(终止)应用程序后启动应用程序时,它会自动从其下载的偏移量恢复下载,为此我实现了以下方法:
AFDownloadRequestOperation * operation = [[AFDownloadRequestOperation alloc] initWithRequest:request targetPath:path shouldResume:YES];
现在我正在使用 AFNetworking 2.0 API AFHTTPSessionManager 进行后台下载。我已通过以下方式创建了后台会话:
NSString* strIdentifier = [NSString stringWithFormat:@"someUniqueIdentifier"];
NSURLSessionConfiguration *sessionConfig;
if ([[[UIDevice currentDevice] systemVersion] floatValue] >=8.0f)
{
sessionConfig =[NSURLSessionConfiguration backgroundSessionConfigurationWithIdentifier:strIdentifier];
}
else
{
sessionConfig = [NSURLSessionConfiguration backgroundSessionConfiguration:strIdentifier];
}
self.backgroundSessionManager = [[AFHTTPSessionManager alloc] initWithSessionConfiguration:sessionConfig];
然后我用委托回调开始了后面的后台下载任务:
self.bookDownloadTask = [self.backgroundSessionManager downloadTaskWithRequest:request progress:nil destination:nil completionHandler:nil];
[self.bookDownloadTask resume];
再次考虑早先的情况 -
当用户在应用程序崩溃后或用户强制退出(终止)应用程序后启动应用程序时,它会自动启动(不恢复)下载但不会从它下载的偏移量开始,它开始下载表单的开头
有没有办法从使用AFHTTPSessionManager下载的偏移量自动恢复下载?
任何帮助将不胜感激。谢谢!!