By default, WebView does not implement JavaScript alert dialogs, ie. alert()
will do nothing. In order to make you need to firstly enable JavaScript (obviously..), and then set a WebChromeClient
to handle requests for alert dialogs from the page:
webView.setWebChromeClient(new WebChromeClient() {
//Other methods for your WebChromeClient here, if needed..
@Override
public boolean onJsAlert(WebView view, String url, String message, JsResult result) {
return super.onJsAlert(view, url, message, result);
}
});
Here, we override onJsAlert
, and then we call through to the super implementation, which gives us a standard Android dialog. You can also use the message and URL yourself, for example if you want to create a custom styled dialog or if you want to log them.