私はハイブリッド(Objective C + HTML)アプリケーションを持っており、ユーザーのデバイスにリモートファイル(イメージとCSS)を定期的に保存できるようにしたいと思います。同じアプリケーション内のwebviewインスタンス内のブラウザによって読み込まれるようになります。webviewが見ることができるユーザーのデバイスにファイルを保存する
リソースバンドル自体にファイルを保存することはできません(シミュレータでは可能ですが)ので、ファイルを別の場所に保存する必要があると思います。しかし、私は、HTML文書がまだそれにアクセスできる場所をどのように使うべきかはわかりません。
NSURL* url = [NSURL URLWithString:@"http://myserver.com/August.png"];
NSString* filePath = @"[?????]/MonthlyImage.png";
NSData* data = [NSData dataWithContentsOfURL:url];
if (data)
{
NSError* error;
if ([data writeToFile:filePath options:NSDataWritingAtomic error:&error])
{
NSLog(@"Wrote");
}
if (error != nil)
{
NSLog(@"ERROR: %@", [error description]);
}
}
その後、私のWebViewの中で、私はこのようなイメージをロードできるようにしたいと思います:
<img src="[??????]/MonthlyImage.png" />
何
基本的に、私はこのような何かをしたいと思います値は??????
の代わりに使用できますか?それも可能ですか?
私は今それを試してみます。 baseURLは問題になりますが、アプリケーションのリソースフォルダからファイルを読み込んでいても、それはありませんか? – Andrew
どういうわけか、私はそう思っています...しかし、それらのリソースをドキュメントフォルダにコピーしてもそれを克服することができます...(私の最後の編集も参照してください) – sergio
これはうまくいくようです。興味深いことに、PCとは異なり、 'Documents'と' Library'フォルダはアプリケーションバンドル自体のサブフォルダであり、相対URLを使ってアクセスできます。だから私はベースURLを変更する必要はありません(とにかくURLRequestでUIWebViewをロードしています)。私はちょうど '
'のようにファイルをロードする必要があります。 –
Andrew