gpt4 book ai didi

iOS UIWebView 缓存问题

转载 作者:行者123 更新时间:2023-11-28 22:41:37 24 4
gpt4 key购买 nike

我的目标是在 iOS 上使用 UIWebView 构建一个 Web 应用程序,基本上是做 BlackBerry 为 Webworks 做的事情。

在四处阅读之后,我不确定缓存是如何工作的,所以我尝试了以下测试:

开始使用“Hello World”创建简单的 Web 应用程序。

构建并运行应用程序 - 运行良好

然后更改了 login.html(这就是我的 hello world 的名称)我所做的更改是我重新添加了 hello world 并带有指向另一个页面的超链接。

当我再次构建并运行时,旧页面仍然显示。

所以我假设某处有缓存?

有什么办法可以做到以下/什么是最好的?

  • 禁用缓存因为速度并不重要我们所有的文件都在磁盘上?
  • 每次启动应用程序时都清除缓存?

有人遇到过这个吗?

谢谢

我试过: How to delete the cache from UIWebview or dealloc UIWebview

另一个更新------

尝试了另一个简单的测试,我删除了我的 HTML 文件夹,其中包含所有 html、css、js 文件,所以它现在在垃圾箱中。再次运行应用程序并从项目中删除 html 引用,它仍然可以完美地加载它们。所以整个东西都缓存在某个地方。

作为另一次尝试,我还添加了:

-(void)dealloc{
self.webView.delegate = nil;
self.webView = nil;
[webView release];
[super dealloc];
}

在 NativeViewController.m 中这没有帮助。

我的应用程序代码:`

#import "NativeViewController.h"

@implementation NativeViewController

@synthesize webView;

// Implement viewDidLoad to do additional setup after loading the view, typically from a nib.
- (void)viewDidLoad {
[super viewDidLoad];

NSString *filePath = [[NSBundle mainBundle] pathForResource:@"login" ofType:@"html"];
NSData *htmlData = [NSData dataWithContentsOfFile:filePath];
if (htmlData) {
NSBundle *bundle = [NSBundle mainBundle];
NSString *path = [bundle bundlePath];
NSString *fullPath = [NSBundle pathForResource:@"login" ofType:@"html" inDirectory:path];
[webView loadRequest:[NSURLRequest requestWithURL:[NSURL fileURLWithPath:fullPath]]];

}
}


- (void)didReceiveMemoryWarning {
// Releases the view if it doesn't have a superview.
[super didReceiveMemoryWarning];

// Release any cached data, images, etc that aren't in use.
}

- (void)viewDidUnload {
[self.webView removeFromSuperview];
self.webView.delegate = nil;
self.webView = nil;
}


-(void)webViewDidFinishLoad{
[[NSURLCache sharedURLCahce] removeAllCachedResponses];
}
- (void)dealloc {
[webView release];
[super dealloc];
}
@end

`

最佳答案

试试这个

if ([htmlData length]==0) {
//no data
}

如果数据长度为 0,则不会加载数据。在其他情况下,即使您从项目中删除 html 文件,除非您不重置它,否则它仍将存在于模拟器中。

希望对您有所帮助。

关于iOS UIWebView 缓存问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14375891/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com