ためwebviewsキャッシュをクリアし、私はいくつかの類似した記事を見つけましたが、彼らは私がやっていると何の影響も与えていないようです。私はUIWebView
を持っています。私は自分のバンドルにローカルコンテンツを表示しています。具体的には、私はdocxファイルを表示しています。ユーザーはめったにこのドキュメントを見るべきではなく、私のアプリはメモリが逼迫しているので、UIWebView
がドキュメントをキャッシュできないようにしたい。もう1つの実行可能なオプションは、ユーザーがビューを離れるときにキャッシュをクリアすることです。ユーザーがビューに入るたびに最初からロードする必要があります。ローカルファイル
私はそうのようなドキュメントを読み込む:
[[NSURLCache sharedURLCache] setMemoryCapacity:0];
[[NSURLCache sharedURLCache] setDiskCapacity:0];
そして:
NSURLCache *sharedCache = [[NSURLCache alloc] initWithMemoryCapacity:0 diskCapacity:0 diskPath:nil];
[NSURLCache setSharedURLCache:sharedCache];
[sharedCache release];
sharedCache = nil;
そして:
を私が試したキャッシュを停止する私の試みにおいてNSString * path = [[NSBundle mainBundle] pathForResource:[NSString stringWithFormat:@"Intro text"] ofType:@"docx"];
NSURL * url = [NSURL fileURLWithPath:path];
request = [NSURLRequest requestWithURL:url];
doc_view_rect = CGRectMake(5,105,self.view.frame.size.width,self.view.frame.size.height);
doc_viewer = [[UIWebView alloc] initWithFrame:doc_view_rect];
[doc_viewer loadRequest:request];
if(request) {
[[NSURLCache sharedURLCache] removeCachedResponseForRequest:request];
}
[[NSURLCache sharedURLCache] removeAllCachedResponses];
私はまた、ポリシーをキャッシュするウェブビューを設定しようとしたが、それはちょうど私はWebViewのをリリースしたときに、残された記憶が残っていたとして、メモリを食べるように見えました。再入力して再割り当てすると、同じメモリは使用されませんでした。
でも、私は、これは正しい方向だとは思いません。これらはすべて、Webページのキャッシュを停止する方法としてタグ付けされていましたが、ローカルファイルには影響しないようです。 私は本当にこれ以外にどこに行くべきか分かりません。誰かがキャッシュをクリアする方法を知っていたり、最初のキャッシングを防ぐのであれば、私はいくつかの助けに非常に感謝します。