1. 程式人生 > >Android9.0無法加載圖片及訪問不了服務器問題

Android9.0無法加載圖片及訪問不了服務器問題

加載 ast -c https協議 cat art mit 登錄 use

當在安卓9.0加載網絡請求數據時,如果拋出如下異常:

Cause (1 of 1): class java.io.IOException: Cleartext HTTP traffic to xxxx.xxxx.xxxx not permitted

這是因為Android 9.0 版本系統默認支持一個網絡訪問協議:Https協議的網絡,所以不支持網絡訪問:Http協議的網絡
面對這樣的問題,解決辦法:

第一種辦法
在AndroidMainfast.xml清單文件 Application裏增加代碼::

android:usesCleartextTraffic="true"

然後重新運行,就可以解決了訪問不到服務器HTTP接口和圖片加載的問題

第二種方案:
在rec文件夾中創建一個xml文件夾,然後創建一個network-security-config.xml。xml文件代碼如下:

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

然後在<application>標簽內添加以下代碼:

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" />

Android9.0無法加載圖片及訪問不了服務器問題