OkHttp报异常
最近一直碰到一个错误,在用okhttp请求网络数据的时候一直跳到异常语句执行,请求百度可以得到数据,请求接口却不行,经过一番百度,查到是Android模拟器的问题,因为前段时间把模拟器跟换到了安卓10,出现这个错误的主要原因是:从 Android 9 开始,默认情况下该内容库已从bootclasspath 中移除且不可用于应用。且Android P 限制了明文流量的网络请求,非加密的流量请求都会被系统禁止掉,简单说就是发来的数据没有加密,所以报错。
解决方案
在res目录下新建一个xml目录,在xml目录下新建network_security_config.xml文件,cleartextTrafficPermitted=“true” 表示允许非加密的数据进入
插入以下代码
<?xml version="1.0" encoding="utf-8"?>
<network-security-config>
<base-config cleartextTrafficPermitted="true" />
</network-security-config>
编辑 AndroidManifest.xml节点application
插入代码:
android:networkSecurityConfig="@xml/network_security_config"
如图:
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-2A2OEYcU-1622198642144)(C:\Users\86136\AppData\Roaming\Typora\typora-user-images\image-20210528183816621.png)]
2A2OEYcU-1622198642144)]
附上原文链接:https://www.cnblogs.com/inthecloud/p/10972943.html