最近项目中Webview加载第三方的具有302的重定向,但是却发现却没有重新跳转。最后发现问题如下: public boolean shouldOverrideUrlLoading(WebView view, String url) { super.shouldOverrideUrlLoading(view, url)
          最近项目中Webview加载第三方的具有302的重定向,但是却发现却没有重新跳转。最后发现问题如下:
 public boolean shouldOverrideUrlLoading(WebView view, String url) {
   super.shouldOverrideUrlLoading(view, url);
   ........
   .........
   return true;
 }
发现最后返回的true,所以导致不会重定向跳转,只要返回fasle就可以重定向跳转了,如果你某些情况下需要,返回true自己处理一些url那你完全可以自己做判断。
那么return fasle 和return true 有什么区别呢?
  
    
       
  
  返回结果 
      含义 
    
补充知识:不让WebView调用系统自带浏览器
webView2= (WebView) findViewById(R.id.webview2);
 
    webView2.setWebViewClient(new WebViewClient( ){
      //覆盖shouldOverrideUrlLoading 方法
      @Override
      public boolean shouldOverrideUrlLoading(WebView view, String url){
        view.loadUrl(url);
        return true;
      }
    });
 
    webView2.loadUrl("http://www.baidu.com");
重写setWebViewClient
以上这篇Android WebView 内处理302重定向不跳转的解决就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持自由互联。
