当在安卓9.0加载网络请求数据时,若是抛出以下异常:java
Cause (1 of 1): class java.io.IOException: Cleartext HTTP traffic to xxxx.xxxx.xxxx not permittedandroid
这是由于Android 9.0 版本系统默认支持一个网络访问协议:Https协议的网络,因此不支持网络访问:Http协议的网络
面对这样的问题,解决办法:apache
第一种办法
在AndroidMainfest.xml清单文件 Application里增长代码::服务器
android:usesCleartextTraffic="true"网络
而后从新运行,就能够解决了访问不到服务器HTTP接口和图片加载的问题app
第二种方案:
在rec文件夹中建立一个xml文件夹,而后建立一个network-security-config.xml。xml文件代码以下:ide
<?xml version="1.0" encoding="utf-8"?>
<network-security-config>
<base-config cleartextTrafficPermitted="true" />
</network-security-config>ui
而后在<application>标签内添加如下代码:xml
android:networkSecurityConfig="@xml/network_security_config"接口
若是im仍是登陆不上去,推送也注册失败。是由于Android 9.0版本找不到http.client的类了。
解决半部分,在AndroidMainfast.xml文件清单里再加一句以下代码:
<uses-library android:name="org.apache.http.legacy" android:required="false" />