devflow.kr@:~#

Android WebView clearHistory 사용하는 법

ANDROID

WebView에서 History를 지워야할 때 가 있는데 아무곳(필자의 예로써 onBackPressed)에서는 작동을 하지 않습니다. 아니 정확히는 작동을 합니다. 하지만 반드시 WebViewClient의 onPageFinished에 넣어 줘야합니다. 아래는 해당 히스토리를 제거하는 코드입니다.


        webView.setWebViewClient(new WebViewClient(){
            @Override
            public void onPageFinished(WebView view, String url) {
                if(isClearHistory){
                    isClearHistory=false;
                    view.clearHistory();
                }
                super.onPageFinished(view, url);
            }
        });


중략


    private void LoadPage(String url){
        webView.loadUrl(url);
        isClearHistory = true;
        webView.setVisibility(View.VISIBLE);
    }


(참고로 위 코드는 LoadPage가 호출될때마다 히스토리를 클리어하는데 필자의 경우에는 특별한 경우이기 때문에 이런 방법을 사용한 것입니다. 개발자의 입장에 맞춰 수정하길 바랍니다. )

티스토리 툴바