【发布时间】:2013-06-27 05:17:57
【问题描述】:
我的应用允许将 PDF 下载到设备。但是,在下载 PDF 时,该应用程序在下载完成之前无法执行任何操作。我该怎么做才能在下载过程中处理其他操作?这是我目前下载的。
RSSEntry *entry = [_allEntries objectAtIndex:indexPath.row];
NSString *urlString = entry.articlePDF;
NSURL *url = [NSURL URLWithString:urlString];
NSData *data = [NSData dataWithContentsOfURL:url];
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *filename = [entry.articleTitle stringByAppendingString:@".pdf"];
NSString *removed = [filename stringByReplacingOccurrencesOfString:@"/" withString:@""];
NSString *documentsDirectory = [paths objectAtIndex:0];
NSString *pdfPath = [documentsDirectory stringByAppendingPathComponent: removed];
NSLog(@"Downloadstarted%@", pdfPath);
[data writeToFile:pdfPath atomically:YES];
【问题讨论】:
-
您正在将 pdf 作为同步请求下载,因此它将阻塞该线程,直到所有数据都从服务器下载,而不是在主线程上下载,而是使用异步任务下载它。
标签: ios pdf nsurlconnection