最近,将安卓8平台上的应用商城迁移到安卓9平台一直显示不出数据,一直也没有头绪,今天就认真去debug了一下。debug结果显示一直进入 onFailure方法,这明显是请求数据出错,后端api接口测试过没问题,也一直在使用,于是就看信息。
查了一下是因为android9(api28)之后禁止了非安全的http链接需要全部使用https,但是后端无法更改只能想办法更改客户端。
于是就想起自己以前大学做课设也遇到过这个问题就去翻GitHub,果然,
解决方法就来了,只需要在res下新建xml目录增加配置文件network_security_config.xml文件
<network-security-config>
<!--默认允许所有网址使用非安全连接-->
<base-config cleartextTrafficPermitted="true" />
</network-security-config>
然后再AndroidManifest.xml文件中增加
android:networkSecurityConfig="@xml/network_security_config"
此配置就解决了。