环境
Mac, Android Studio 3.5, Volley 1.1.0
问题描述
将编译版本 compileSdkVersion 改为 28 后,Volley 请求返回超时。
问题分析
- 将编辑版本改回 27 后请求正常。确定二者存在兼容问题。
- 在volley项目和官方页面没看到相关描述
- 在stackoverflow以及另一网页提供的参考链接中中得到答案:android9.0强制要求禁止明文传输。
以此为关键词,查找得到解决方案
问题解决
在AndroidManifest.xml的application
中配置android:networkSecurityConfig
属性即可。具体如下
android:networkSecurityConfig="@xml/network_security_config"
在res文件夹下建立xml文件夹,并建立名为network_security_config.xml的文件,文件内容如下
<?xml version="1.0" encoding="utf-8"?>
<network-security-config>
<base-config cleartextTrafficPermitted="true" />
</network-security-config>