不记录webview缓存

来源:互联网 发布:android存储数据的目录 编辑:程序博客网 时间:2024/05/16 07:43

首先要这么设置:
不使用缓存,WebView.getSettings().setCacheMode(WebSettings.LOAD_NO_CACHE);

如果不想回退时返回曾经访问过的页面,可以在onPageFinished()中clearHistory(). 注意时机不是loadUrl之前,而是页面加载之后。代码示例:

//mWebView为浏览器实例mWebView.setWebViewClient(new WebViewClient() {         @Override        public boolean shouldOverrideUrlLoading(WebView view, String url) {//不使用外部浏览器            view.loadUrl(url);            return true;        }        @Override        public void onPageFinished(WebView view, String url) {            super.onPageFinished(view, url);            if (clearHistory) {//clearHistory为业务需求设置的boolean参数,可根据需要增减                clearHistory = false;                mWebView.clearHistory();            }            mWebView.setVisibility(VISIBLE);        }    });   mWebView.setOnKeyListener(new OnKeyListener() {        // webview can go back        @Override        public boolean onKey(View v, int keyCode, KeyEvent event) {           if (keyCode == KeyEvent.KEYCODE_BACK && mWebView.canGoBack()) {//由于history被清理掉,canGoBack()会返回false               mWebView.goBack();                return true;           }           return false;      }   });
0 0
原创粉丝点击