欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  移动技术

Android WebView 内处理302重定向不跳转的解决

程序员文章站 2023-08-25 23:01:45
最近项目中webview加载第三方的具有302的重定向,但是却发现却没有重新跳转。最后发现问题如下: public boolean shouldoverrideurlloading(webview v...

最近项目中webview加载第三方的具有302的重定向,但是却发现却没有重新跳转。最后发现问题如下:

 public boolean shouldoverrideurlloading(webview view, string url) {
   super.shouldoverrideurlloading(view, url);
   ........
   .........
   return true;
 }

发现最后返回的true,所以导致不会重定向跳转,只要返回fasle就可以重定向跳转了,如果你某些情况下需要,返回true自己处理一些url那你完全可以自己做判断。

那么return fasle return true 有什么区别呢?

返回结果 含义
true 表示自己处理,不需要系统处理,比如如果是true,重定向就不会跳转
false 表示开发者自己不处理,交给系统处理

补充知识:不让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重定向不跳转的解决就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。