Strange webview goBack issue in android

10,637

Solution 1

I finally managed to figure out how to do it

@override
public void onFormResubmission(WebView view, Message dontResend, Message resend)
{
  resend.sendToTarget();
}

default behaviour of onFormResubmission is not to resubmit. resend.sendToTarget() changes that.

this will make your hardware back button work if you have made some code to handle the hardware button

@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
  if ((keyCode == KeyEvent.KEYCODE_BACK) && mWebView.canGoBack()) {
    mWebView.goBack();
    return true;
  }
  return super.onKeyDown(keyCode, event);
}

Solution 2

I have disabled the cache and then it worked:

WebView webView = (WebView)findViewById(R.id.webView);
webView.getSettings().setCacheMode(WebSettings.LOAD_NO_CACHE);
Share:
10,637
cagryInside
Author by

cagryInside

Updated on July 19, 2022

Comments

  • cagryInside
    cagryInside almost 2 years

    I am using webview in Android. But strangely, sometimes even webview canGoBack method returns true, webview goBack method doesn't work.

    if (webView.canGoBack()) 
        webView.goBack();
    

    Thanks for any idea.

  • AndroidDev
    AndroidDev almost 12 years
    I am using the above code and having issue of method mWebView.canGoBack() always returns true even if there is no history. The problem is I can not go back to previous activity when pressing device back button because mWebView.canGoBack() returns true. Any help?
  • Manfred Moser
    Manfred Moser over 11 years
    Thanks for finding that and sharing.
  • jph
    jph over 10 years
    this fixed the issue i was having.