服务器之家:专注于VPS、云服务器配置技术及软件下载分享
分类导航

PHP教程|ASP.NET教程|Java教程|ASP教程|编程技术|正则表达式|C/C++|IOS|C#|Swift|Android|VB|R语言|JavaScript|易语言|vb.net|

服务器之家 - 编程语言 - Android - Android WebView 内处理302重定向不跳转的解决

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

2022-12-05 13:40苏打水解渴 Android

这篇文章主要介绍了Android WebView 内处理302重定向不跳转的解决,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧

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

?
1
2
3
4
5
6
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调用系统自带浏览器

?
1
2
3
4
5
6
7
8
9
10
11
12
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重定向不跳转的解决就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持服务器之家。

原文链接:https://blog.csdn.net/baidu_31956557/article/details/80019152

延伸 · 阅读

精彩推荐