最近在適配Android 9時遇到一些坑,這裏簡單說下,希望對大家有所幫助.
原因:android9.0系統默認禁止http協議,即禁止明文傳輸,必須使用https來通訊;而app中所使用的圖片和某些地方用的正好是http協議的方式。
解決方法:
//1.AndroidManifest.xml的application中添加如下一條屬性即可:
android:usesCleartextTraffic="true"
android:networkSecurityConfig="@xml/network_security_config"
//2. 添加需要的庫文件聲明
<uses-library android:name="org.apache.http.legacy" android:required="false"/>
//3 .權限聲明:
<uses-permission android:name="android.permission.FOREGROUND_SERVICE" />
附贈network_security_config.xml內容
<?xml version="1.0" encoding="utf-8"?>
<network-security-config>
<base-config cleartextTrafficPermitted="true" />
</network-security-config>