android WebView 重定向 无效 ERROR:ssl_client_socket_impl.cc(959)

编程之家收集整理的这篇文章主要介绍了android WebView 重定向 无效 ERROR:ssl_client_socket_impl.cc(959)编程之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

概述

问题:使用webview加载url时候,h5那边做了重定向的操作。但是webview并没有加载对应的URL。问题排查:重写 shouldOverrideUrlLoading 看是否是系统处理了,还是拦截业务代码处理了跳转。return true表示自己处理。return super.shouldOverrideUrlLoading或是false,系统会去加载该url。webView.setWebViewClient(new WebViewClient() {@Overridepublic,下方主要介绍关于android WebView 重定向 无效 ERROR:ssl_client_socket_impl.cc(959)的全文内容,希望对你有所帮助。

问题
使用webvIEw加载url时候,h5那边做了重定向的操作。但是webvIEw并没有加载对应的URL。

问题排查:

  1. 重写 shouldOverrIDeUrlLoading 看是否是系统处理了,还是拦截业务代码处理了跳转
    return true表示自己处理。return super.shouldOverrIDeUrlLoading或是false,系统会去加载该url。
webVIEw.setWebVIEwClIEnt(new WebVIEwClIEnt() {
@OverrIDe

public boolean shouldOverrIDeUrlLoading(WebVIEw vIEw, String url) {
vIEw.loadUrl(url);
return true;
}

});

参考:androID webvIEw 二次验证流程分析 shouldOverrIDeUrlLoading深度分析链接

  1. 发现走到了shoud方法,但是还是没有跳转
    排查:把重定向的url拿出来,首次去loadurl,发现加载不出来。报错
    ERROR:ssl_clIEnt_socket_impl.cc(959)。
    猜想:可能是由于https网络配置相关出错导致url加载失败的。

查看ap相关配置:

  <application
    androID:allowBackup="true"
    androID:icon="@mipmap/ic_launcher"
    androID:label="@string/app_name"
    androID:roundIcon="@mipmap/ic_launcher_round"
    androID:supportsRtl="true"
    androID:theme="@style/Apptheme"
    androID:networkSecurityConfig="@xml/network_security_config"
    androID:usesCleartextTraffic="true">
    <network-security-config>
    <base-config cleartextTrafficPermitted="true">
    </base-config>

</network-security-config>

修改配置如下,加载成功了。

<network-security-config>
    <base-config cleartextTrafficPermitted="true">

        <trust-anchors>
            <certificates
                overrIDePins="true"
                src="system" />
            <certificates
                overrIDePins="true"
                src="user" />
        </trust-anchors>

    </base-config>

</network-security-config>

后续:

  1. 连了代理可能导致出现页面加载失败的情况,需要把加载失败的url单独提出来,分析。这样能快速定位问题
  2. ssl相关配置只适用于日常开发,不要打包到线上,防止被抓包。

总结

以上是编程之家为你收集整理的android WebView 重定向 无效 ERROR:ssl_client_socket_impl.cc(959)全部内容,希望文章能够帮你解决android WebView 重定向 无效 ERROR:ssl_client_socket_impl.cc(959)所遇到的程序开发问题。

如果觉得编程之家网站内容还不错,欢迎将编程之家网站推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。

HTML文章

HTML邮件内容所在上下文或者说所在外部容器(以下简称环境)都是由邮箱服务商决定的,这就要求邮件内容需要在任何一种情况下都要正确显示。
HTML内容类型决定使用的语义标签,在网页中某种类型的内容必定需要某种特定的HTML标签来承载,也就是我们常常提到的根据你的内容语义化HTML结构。
HTML代码在书写的时候应该遵循什么规范?青岛星网今天跟大家分享:HTML的代码格式规范,希望大家都可以写出高质量的HTML代码。
青年码农 一个码农运营的公众号,佛系更新。 139篇原创内容 ...
better-scroll实现左侧导航点击,右侧内容滚动,或者右侧内容滑动,左侧导航联动
一、基本使用需求:有两个页面(A 和 B),当我们在页面A的table列表中点击查看详情按钮,跳转到B页面,在B页面点击返回时,要定位到之前A的列表位置, 不能刷新该页面。在 &lt;router-view /&gt; 的外层包一个 keep-alive 如:&lt;keep-alive include="pageA"&gt; &lt;router-view /&gt;&lt;/keep-alive&gt;其中 include 为要缓存的页面,如果有多个页面可用逗号隔开,pageA为.
WebviewObjectWebview窗口对象,用于操作加载HTML页面的窗口属性id:webview窗口的标识方法:监听addEventListener添加事件监听器wobj.addEventListener( event, listener, capture );参数说明:event: ( WebviewEvent ) 必选 Webview窗口事件类型liste...
1、Android调用H5(JS)1.1、新建assets资源目录并将准备好的HTML页面放入其中(真实项目中HTML页面放在Tomcat中启动)1.2、初始化webView并加载HTML页面 @SuppressLint({"SetJavaScriptEnabled", "AddJavascriptInterface"}) public void initWebView() { //可以加载网页和自定义浏览器 webView = new W
微信公众号搜索 “ 程序精选 ” ,选择关注!
微信公众号搜 "程序精选"关注