在我的Android应用程序中,我使用WebView并遇到了缓存问题。 缓存文件后,WebView会永久保留它(或者至少在我手动删除缓存之前)。
在Apache Access-Log中,我看到一旦文件被缓存,WebView就不会发送请求。如何使用常见的ETag和HTTP-Code 304设置WebView以发送检查文件是否过期的请求?在桌面浏览器(Firefox,Chrome)上,缓存按预期工作。
这是我的代码:
webView = (WebView) findViewById(R.id.webView);
webView.getSettings().setJavaScriptEnabled(true);
webView.getSettings().setDomStorageEnabled(true);
webView.setWebViewClient(new EWebViewClient(this));
webView.getSettings().setBuiltInZoomControls(false);
webView.getSettings().setSupportZoom(true);
webView.getSettings().setCacheMode(WebSettings.LOAD_DEFAULT);
webView.setWebChromeClient(new EWebChromeClient(this));
webView.setBackgroundColor(Color.argb(1,0,0,0));
webView.setLayerType(View.LAYER_TYPE_SOFTWARE, null);
webView.loadUrl(url);
EWebViewClient仅覆盖:“shouldOverrideUrlLoading,onPageFinished,onLoadResource,onReceivedError”
我非常感谢您提供的任何帮助。