Iphone UIWebView下载文件时是否锁定/冻结/挂起应用程序?

Iphone UIWebView下载文件时是否锁定/冻结/挂起应用程序?,iphone,objective-c,xcode,ios5,uiwebview,Iphone,Objective C,Xcode,Ios5,Uiwebview,我的应用程序使用UIWebView加载网站并下载文件,当用户单击下载链接时,应用程序将冻结,直到文件下载完成,然后应用程序恢复正常,不会崩溃,只是冻结。。我怎样才能解决这个问题 我用这个代码下载 - (BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType { if(na

我的应用程序使用UIWebView加载网站并下载文件,当用户单击下载链接时,应用程序将冻结,直到文件下载完成,然后应用程序恢复正常,不会崩溃,只是冻结。。我怎样才能解决这个问题

我用这个代码下载

- (BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType 
{

if(navigationType == UIWebViewNavigationTypeLinkClicked) 
{
    NSURL *requestedURL = [request URL];

    // ...Check if the URL points to a file you're looking for...
    // Then load the file
    NSData *fileData = [[[NSData alloc] initWithContentsOfURL:requestedURL] autorelease];

    // Get the path to the App's Documents directory
    NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); 
    NSString *documentsDirectory = [paths objectAtIndex:0]; // Get documents folder
    [fileData writeToFile:[NSString stringWithFormat:@"%@/%@", documentsDirectory, [requestedURL lastPathComponent]] atomically:YES];
} 
return YES;
}


- (NSString *)documentsDirectoryPath {
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectoryPath = [paths objectAtIndex:0];
return documentsDirectoryPath;
}

请参阅Apple iOS 5.1文档中的“URL加载系统编程指南”。您需要设置一个异步请求。URL加载系统有许多代码示例。

您是否经常在目录中写入大量数据?我刚刚发现asynchronus的下载文件的HttpRequest。。我觉得很好:)