caching - 如何清除 UIWebView 的 loadHtmlString 缓存?

标签 caching uiwebview

我的应用程序包中有一些嵌入的 html。我正在使用 loadHtmlString 加载它。同时我的文档文件夹中有一些图像文件。我想用我的文档文件夹中的一个替换html中的img。例如,这是我拥有的示例 html:

       <div id="image">
            <a href="image">
                <img src="@image" class="center">               
            </a>
        </div>

我正在使用以下代码将 @image 替换为文档中的文件路径:
    NSString* imgFile = [NSString stringWithFormat:@"file:///%@/%@",
                         [NSHomeDirectory() stringByAppendingPathComponent:@"Documents/Images"],@"myimage.png"];
    text = [text stringByReplacingOccurrencesOfString:@"@image" withString:imgFile];   

    NSURL* baseUrl = [NSURL fileURLWithPath:[[NSBundle mainBundle] resourcePath]];
    [self.webView loadHTMLString:text baseURL:baseUrl];    

(文本是我的 html 文件的 html 文本)。

当这段代码被调用时,它第一次工作。但是比如我修改myimage.png,再次调用代码,还是显示我修改之前的图片。 (我已经在我的文档文件夹中检查了我的文件,它已经被正确修改了)。

我怀疑它是由缓存引起的。有人可以建议吗?

谢谢

注:

它是由缓存引起的。我通过使用以下方法强制 UIWebView 加载图像的新副本解决了该问题:
NSString* imgFile = [NSString stringWithFormat:@"file:///%@/%@?t=%d",
                         [NSHomeDirectory() stringByAppendingPathComponent:@"Documents/Images"],@"myimage.png",time(NULL)];
    text = [text stringByReplacingOccurrencesOfString:@"@image" withString:imgFile];

最佳答案

我通过在我的 url 中添加一个时间来解决这个问题。所以图像不会被缓存。请引用我的问题。问题被认为是封闭的。

关于caching - 如何清除 UIWebView 的 loadHtmlString 缓存?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11516278/

相关文章:

IOS:如何从钥匙串(keychain)中检索用户名/密码到 uiwebview

ios - WKWebView/UIWebView 获取网站图标

ios - 镜像 UIWebView 的最佳方式

android - 使用Android的系统缓存

ios - 以编程方式创建 UIwebview 重新加载 + 返回/前进按钮

wordpress - W3 总缓存、HTTPS 和 Google Analytics

python-3.x - 在 Prefect 中,可以在流程运行期间缓存任务值吗?

objective-c - 如何在 UIWebview 中调整图像大小?

c - 更好的基准同步

java - Apache Ignite 缓存放置和获取速度很慢