UIWebView链接代理



我想做的是创建一个应用程序,下载某些扩展名的文件(比如说从FTP下载.mp3文件)。我想要一个在UIWebview中点击链接的委托方法,如果链接以".mp3"结尾,则创建某种下载方法,将文件写入/Documents目录,并使用自动文件名。

有什么办法做到这一点吗?我到处寻找下载文件并将其写入/Documents目录,但没有答案。

提前感谢!

有:

      - (void)webViewDidFinishLoad:(UIWebView *)aWebView
        {
            currentURL = self.webView.request.URL.absoluteString;
            NSLog(@"Current URL %@", currentURL);
            if ([currentURL rangeOfString:@"mp3"].location == NSNotFound) {
                NSLog(@"string does not contain mp3");   
            } else {
                NSLog(@"Found mp3");
                //Do the download here
NSString *urlString = currentURL;
            NSURL  *url = [NSURL URLWithString:urlString];
            NSData *urlData = [NSData dataWithContentsOfURL:url];
            [urlData writeToURL:url atomically:YES];
            if ( urlData )
            {  
                NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
                NSString  *documentsDirectory = [paths objectAtIndex:0];
                NSString  *filePath = [NSString stringWithFormat:@"%@/%@", documentsDirectory,@"downloadedMP3.mp3"];
                [urlData writeToFile:filePath atomically:YES];
            }
            }
        }

不要忘记遵守.h文件(<UIWebViewDelegate>)中的UIWebView协议

最新更新