安卓10webview无法联网 但是安卓8却可以打开新的网页 ERR_CLEARTEXT_NOT_PERMITTED network_service_network_delegate

安卓10webview无法联网 但是安卓8却可以打开新的网页 ERR_CLEARTEXT_NOT_PERMITTED network_service_network_delegate

问题的提出

我在安卓用WebView打开h5界面的时候,发现想跳转打开一个新的页面出现那问题,直接显示网路无连接,因为之前没有使用,也就没有太关注。但是今天写到一个需求必须要打开新的界面,这就困到到我了。

平时我是在安卓10的手机上调试的,但是有时候偶尔在一个安卓8的手机上调试,发现能打开新的网页。打开网页的时候在控制台会报错
[ERROR:network_service_network_delegate.cc(243)] final url http://www.baidu.com/ error_code: -29
我去网上搜了下 发现解决方案并不适用。

问题解决

然后我就用最原先的webview来打开,哦豁发现报错
在这里插入图片描述
net::ERR_CLEARTEXT_NOT_PERMITTED

报错这个,奈斯啊。我记得这个错误似曾相识,我记得啊,瞬间开心起来。网上的解决方案是在
AndroidMainifest.xml 里面的 appliction 里面添加

android:usesCleartextTraffic="true"

我打开一看,咦我已经添加了啊,为什么还会有这个错误呢。

这时候我的目光转移到了这行代码的下一行

android:networkSecurityConfig="@xml/network_security_config"

这是之前报错配置的一个文件,好像也是因为什么网络问题才添加的这个。

我们来看看这个xml里面写了什么

<?xml version="1.0" encoding="utf-8"?>
<network-security-config>
    <domain-config>
        <domain includeSubdomains="true">example.com</domain>
        <pin-set expiration="2018-01-01">
            <pin digest="SHA-256">7HIpactkIAq2Y49orFOOQKurWxmmSFZhBCoQYcRhJ3Y=</pin>
            <!-- backup pin -->
            <pin digest="SHA-256">fwza0LRMXouZHRC8Ei+4PyuldPDcf3UKgO/04cDM1oE=</pin>
        </pin-set>
    </domain-config>
</network-security-config>

大概呢就是一个安全的配置。
我觉得一定是这里的问题,把

android:networkSecurityConfig="@xml/network_security_config"

这行代码删了之后,好了,可以打开网页了。问题解决。
以至于安卓8为啥可以,安卓10不可以 可能10的时候更新了配置吧。我也不太清楚。有清楚的小可爱可以留言告诉我哦~

后续

有同学说,我一定要使用这个xml配置咋办呢,建议可以试一试在这个xml里面添加一个base-config试试

<?xml version="1.0" encoding="utf-8"?>
  <network-security-config>
     <base-config cleartextTrafficPermitted="true" />
   </network-security-config>

记录学习过程中问题,手打不易。帮助到你点个赞吧~~~~~

相关推荐
©️2020 CSDN 皮肤主题: 1024 设计师:白松林 返回首页