J'ai ces codes:
public class MyAppWebViewClient extends WebViewClient {
@Override
public boolean shouldOverrideUrlLoading(WebView view, WebResourceRequest request) {
//want url of the webview in here
}
Je veux juste savoir comment puis-je obtenir l'URL de la vue Web pour remplacer le chargement de l'URL. La méthode shouldOverrideUrlLoading(WebView view, String url)
est déconseillée dans API21.
Merci d'avance!
dans\Android\sdk\sources\Android-25\Android\webkit\WebViewClient.Java , vous pouvez voir ce code.
La réponse à votre question est donc brève: request.getUrl().toString()
Vérifier les sources sur GrepCode .
boolean shouldOverrideUrlLoading (WebView view, String url)
obsolète dans l'API 24, boolean shouldOverrideUrlLoading (WebView view, WebResourceRequest request)
ajouté dans l'API de niveau 24
@RequiresApi(api = Build.VERSION_CODES.N)
@Override
public boolean shouldOverrideUrlLoading(WebView view, WebResourceRequest request) {
if(Uri.parse(request.getUrl().toString()).getHost().endsWith("google.com")) {
//The Host application wants to leave the current WebView and handle the url itself.
return true;
}
if(Uri.parse(request.getUrl().toString()).getHost().endsWith("yandex.com")) {
//The current WebView handles the url.
return false;
}
if(Uri.parse(request.getUrl().toString()).getScheme().equals("file")) {
//The current WebView handles the url.
return false;
}
Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(request.getUrl().toString()));
view.getContext().startActivity(intent);
return true;
}
s'il vous plaît voir ma réponse peut que cela va vous aider ... !!!!
WebView webview = new WebView(context);
webview.setWebViewClient(new WebViewClient()
{
@Override
public void onPageStarted(WebView view, String url, Bitmap favicon) {
super.onPageStarted(view, url, favicon);
System.out.println("your current url when webpage loading.." + url);
}
@Override
public void onPageFinished(WebView view, String url) {
System.out.println("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);
}
});
comment obtenir l'URL de la page en cours à partir de l'affichage Web dans Android