我的應用程序允許將PDF下載到設備。但是,在下載PDF時,應用程序無法做任何事情,直到下載完成。我怎樣才能做到這一點,以便在下載過程中處理其他操作?這是我迄今爲止下載的內容。下載PDF在iOS應用程序中凍結
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作爲同步請求,因此將阻止直到從服務器下載所有數據,而不是在主線程上下載它使用異步任務下載它。 –