我目前正在开发一款iPhone应用程序,并希望实现从互联网上下载文件(特别是pdf,mp3,doc和ppt文件)的功能。我创建了UIWebView,但是想知道在webview中链接文件时捕获文件的最佳方法,然后将它们下载到文档目录中的指定文件夹。
非常感谢任何有关教程等的建议/链接。
干杯
答案 0 :(得分:3)
<强>被修改强>
UIWebView不能用于下载 pdf,mp3,doc,ppt等...它仅用于显示网页。
您需要使用Quartz 2D来绘制pdf文档。您需要Media Player framework来播放歌曲,有声读物。
要从服务器下载文件,您可以尝试使用[NSData initWithContentsOfURL]方法。
一个例子:
NSString *strImagePathURL = [NSString stringWithFormat:@"http://foo.com/%d.png", item];
NSData *imageData = [[NSData alloc] initWithContentsOfURL:[NSURL URLWithString:strImagePathURL]];
您可以稍后决定如何处理NSData,您可以使用[NSData writeToFile]方法将其保存到Documents文件夹中的文件。
答案 1 :(得分:2)
找到了捕获链接的方法。这是一个委托方法,因此请确保所有挂钩都已到位:
- (BOOL)webView:(UIWebView*)webView shouldStartLoadWithRequest:(NSURLRequest*)request navigationType:(UIWebViewNavigationType)navigationType {
//CAPTURE USER LINK-CLICK.
if (navigationType == UIWebViewNavigationTypeLinkClicked) {
NSURL *URL = [request URL];
NSLog(@"url is: %s ", URL);
}
return YES;
}
一旦完成,我会发布我的最终代码。
答案 2 :(得分:1)
要捕获UIWebView中的链接,请实施webView:shouldStartLoadWithRequest:navigationType:
委托方法,并在看到要处理的链接时返回NO
。
有关如何在iPhone上使用HTTP下载的示例代码,请参阅SimpleURLConnections示例项目。