【问题标题】:Android WebView, loading pages one by one - caching issuesAndroid WebView,一页一页加载——缓存问题
【发布时间】:2013-01-08 15:25:12
【问题描述】:

我正在尝试在 android WebView 中一一加载几个 html 页面/css 文件/图像:我创建了一个 WebView 组件,使用 loadURL 加载文件并使用重载的 onPageFinished 注册 WebViewClient,我从中获取另一个 URL列出并要求 WebView 加载它。但是,我遇到了一些缓存问题:似乎 onPageFinished 比我需要的更早被调用并且加载的文件没有被缓存 - 在另一个请求中,仅使用缓存的文件,我得到了旧版本的页面。当我在加载另一个 URL 之前添加 Thread.sleep(2000) 时,页面被正确缓存。是否有另一个回调函数可以保证我不会在下次调用 loadURL 时中断缓存过程?

【问题讨论】:

    标签: android caching webview


    【解决方案1】:

    试试这个:

    mWebView.clearHistory();
    mWebView.clearFormData();
    mWebView.clearCache(true);
    WebSettings webSettings = mWebView.getSettings();
    webSettings.setCacheMode(WebSettings.LOAD_NO_CACHE);
    

    【讨论】:

    • 是的——我就是这样做的——但问题不同:onPageFinished 在缓存更新之前被调用。
    • 我回去查看了我的一些代码,并用另外 2 个设置更新了 sn-p。再试一次...当我遇到缓存问题时,这很有帮助。
    猜你喜欢
    • 1970-01-01
    • 2013-02-01
    • 2013-11-17
    • 1970-01-01
    • 1970-01-01
    • 2012-06-03
    • 1970-01-01
    • 1970-01-01
    • 2018-08-19
    相关资源
    最近更新 更多