0

我有一个文件,我想在 safari 中打开(或在 safari 中将其称为视图)。我将此文件添加到我的捆绑资源中。

并执行以下操作:

NSString *path = [[NSBundle mainBundle] pathForResource:@"tryFile.txt" ofType:nil inDirectory:nil];
NSURL *url = [NSURL fileURLWithPath: path];
NSLog(@"path: %@ \n url:%@ \n can open url:%d",path,url,[[UIApplication sharedApplication] canOpenURL:url]);
BOOL didGo = [[UIApplication sharedApplication] openURL:url];
NSLog(@"didgo?: %d",didGo);

当然,正如沙盒环境所说,我无法打开文件 ins safari. 它说,canOpenURLas yesbut then didGois NO

在不设置本地服务器的情况下如何做到这一点。请建议。我应该将数据保存在一个变量中,然后用该数据打开一个 html 页面......还是什么?

编辑: 这些是日志:

path: /var/mobile/Applications/C78C7CD8-22C7-468A-AA5D-AF22C6042378/TryApp.app/tryFile.txt 
url:file://localhost/var/mobile/Applications/C78C7CD8-22C7-468A-AA5D-AF22C6042378/TryApp.app/tryFile.txt 
can open url:1



didgo?: 0

请注意,不能在 web 视图中打开文件。该要求希望它在 safari 中打开。无论如何,这个例子是一个文本文件......可以打开的文件可以是任何东西,并且 webview 不支持所有文件类型。

4

3 回答 3

2

txt 文件位于您的应用程序沙箱中。由于 iOS 的安全性,您尝试在 Safari 中加载的 URL 不会被加载。在此处阅读有关它
的更多信息 作为一种解决方法,您可以UIWebView在应用程序中使用 a 并在其中打开文件。

干杯!
阿马尔。

于 2013-05-16T06:42:22.227 回答
0
 NSString *path = [[NSBundle mainBundle] pathForResource:@"tryFile.txt" ofType:nil inDirectory:nil];

 [[UIApplication sharedApplication] openURL:[NSURL URLWithString:path]];

此代码用于直接在 safari 中打开 url,或者您可以在 webview.thanks 中使用 Webview 和直接打开 url

于 2013-05-18T07:23:33.733 回答
0

您需要设置服务器或在UIWebView应用程序内部打开页面。

于 2013-05-16T06:28:47.740 回答