Java Android Webview从缓存加载只在第二次时才能完美工作

Java Android Webview从缓存加载只在第二次时才能完美工作,java,android,webview,Java,Android,Webview,我用以下代码加载了网页: final String url = getIntent().getStringExtra("url"); webView = (WebView) findViewById(R.id.webview); webView.getSettings().setJavaScriptEnabled(true); webView.getSettings().setCacheMode(WebSettings.LOAD_CACHE_ELSE_NETWO

我用以下代码加载了网页:

    final String url  = getIntent().getStringExtra("url");
    webView = (WebView) findViewById(R.id.webview);
    webView.getSettings().setJavaScriptEnabled(true);
    webView.getSettings().setCacheMode(WebSettings.LOAD_CACHE_ELSE_NETWORK);
    webView.getSettings().setDomStorageEnabled(true);
    webView.getSettings().setDatabaseEnabled(true);
    String path = getFilesDir().getAbsolutePath()+"/webcache";
    webView.getSettings().setDatabasePath(path);
    webView.getSettings().setAppCachePath(path);
    webView.getSettings().setAppCacheEnabled(true);
    webView.post(new Runnable() {
        @Override
        public void run() {
            webView.loadUrl(url);
        }
    });
    webView.setWebViewClient(new WebViewClient() {
        @Override
        public boolean shouldOverrideUrlLoading(WebView view, String url) {
            webView.loadUrl(url);
            return true;
        }
    });
首先,我用网络运行它,然后我断开网络以让它从缓存加载。但它每两次只能正常加载一次。 就像这样:
第一次:

第二次:

(第三个与第一个相同,第四个与第二个相同……)
我在so上发现了类似的问题:
我已经尝试了所有有问题的解决方案,甚至尝试禁用硬件加速,但都不起作用……

任何建议都将不胜感激。


提前谢谢。(很抱歉给我添麻烦英语:)

我很想看到这个问题的答案,因为链接的问题实际上没有真正的答案。我相信股票webview/webviewclient中可能存在漏洞。