0

サファリで開きたいファイルがあります(またはサファリでビューと呼びます)。このファイルをバンドル リソースに追加します。

次の操作を行います。

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);

もちろん、サンドボックス環境が言うように、サファリでファイルを開くことはできません。それは言うが、canOpenURLしかしyesそうdidGoである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ビューで開くことはできません。要件は、サファリで開くことを望んでいます。とにかく、この例はテキスト ファイルです...開くことができるファイルは何でもかまいません。また、webview はすべてのファイル タイプをサポートしているわけではありません。

4

3 に答える 3

2

txt ファイルはアプリケーション サンドボックス内にあります。Safari で読み込もうとしている URL は、iOS のセキュリティにより読み込まれません。詳細については、こちらを参照
してください。回避策として、UIWebViewアプリケーションで を使用し、その中でファイルを開くことができます。

乾杯!
アマール。

于 2013-05-16T06:42:22.227 に答える
0

UIWebViewサーバーをセットアップするか、アプリ内でページを開く必要があります。

于 2013-05-16T06:28:47.740 に答える