Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Strange webview goBack issue in android

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.

like image 706
cagryInside Avatar asked Dec 05 '11 14:12

cagryInside


2 Answers

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);
}
like image 55
ram Avatar answered Sep 20 '22 16:09

ram


I have disabled the cache and then it worked:

WebView webView = (WebView)findViewById(R.id.webView);
webView.getSettings().setCacheMode(WebSettings.LOAD_NO_CACHE);
like image 26
codejunkie Avatar answered Sep 20 '22 16:09

codejunkie