come ottenere l’URL della pagina corrente dalla visualizzazione Web in Android

Usando il webview.loadUrl(url) apro un url. Se faccio clic su un Button qualsiasi nella vista che indirizza a un’altra pagina. Ora voglio ottenere l’url della pagina diretta. come posso averlo?

Voglio anche il contenuto che viene visualizzato sulla webview. Come ottenere il contenuto di WebView ?

per favore vedi la mia risposta potrebbe aiutarti … !!!!

 WebView webview = new WebView(context); webview.setWebViewClient(new WebViewClient() { @Override public void onPageStarted(WebView view, String url, Bitmap favicon) { super.onPageStarted(view, url, favicon); Log.d("WebView", "your current url when webpage loading.." + url); } @Override public void onPageFinished(WebView view, String url) { Log.d("WebView", "your current url when webpage loading.. finish" + url); super.onPageFinished(view, url); } @Override public void onLoadResource(WebView view, String url) { // TODO Auto-generated method stub super.onLoadResource(view, url); } @Override public boolean shouldOverrideUrlLoading(WebView view, String url) { System.out.println("when you click on any interlink on webview that time you got url :-" + url); return super.shouldOverrideUrlLoading(view, url); } }); 
 String webUrl = webView.getUrl(); 

Se intendi il contenuto come sorgente di pagina, puoi farlo consultare: https://stackoverflow.com/a/6503817/28557

WebViewClient che tu abbia impostato il tuo WebViewClient . Se non puoi fare come in seguito,

 webView.setWebViewClient(new MyWebViewClient()); String currentUrl; private class MyWebViewClient extends WebViewClient { @Override public boolean shouldOverrideUrlLoading(WebView view, String url) { currentUrl=url; return true; } } 

Qui quando fai clic su qualsiasi collegamento sul WebView , chiamerà shouldOverrideUrlLoading() e puoi ottenere l’URL corrente lì in currentUrl .

questo è il modo più semplice di gestirlo per API> 20: esistono ovviamente altri metodi con parser come HTMLCleaner per avere maggiore controllo. Tuttavia, questo è buono e semplice per ottenere l’URL. Ogni volta che l’URL cambia in Webview, anche l’URL nell’object di richiesta cambia.

 @Override public boolean shouldOverrideUrlLoading(WebView view, WebResourceRequest request) { String temp = request.getUrl().toString(); if(temp.isEmpty()){ Log.i(ActivityName, "No url returned!"); }else{ Log.i(ActivityName, temp); } return false; } 

puoi anche effettuare la chiamata ignorando il metodo onpagefinished di webviewclient. Volevo prenderlo in considerazione, poiché questo viene chiamato quando la pagina finisce di caricarsi.