I have webview in my application and I want it to open pop up windows when clicking on a link inside webview. I have added following code but it didn't work:-
WebSettings webSettings = webViewPage.getSettings();
webSettings.setJavaScriptEnabled(true);
webSettings.setSupportMultipleWindows(true);
webSettings.setJavaScriptCanOpenWindowsAutomatically(true);
the popup should appear like this
I am answering my own question after 3 long years:
When a link is touched inside a webpage then depending on a webpage implementation there are two possible scenarios: 1) Link will be opened in same window. 2) Link will be opened in new window.
Well Its easy to handle 1st scenario using below code:
Overiding shouldOverrideUrlLoading inside WebViewClient implementation will open link in same window.
Now lets look at the 2nd case, where webpage is requesting a url to be open in new window. For this case we need to tell our webview to support multiple windows like below:
and then adding a new web chrome client to webview to get event when new window is requested by webpage
Cheers!!!
Add this line to your web view web.addJavascriptInterface(new Jscalls(this), "Android");
Then add this line to your href in html that is loaded in the web view href="javascript:showAndroidToast('Data to be shown or the URL from which data is to be shown')"