天天看點

解決Android9.0 使用okhttp3通路http請求報錯的問題

問題原因:

應用官方的說明:在 Android 6.0 中,我們取消了對 Apache HTTP 用戶端的支援。 從 Android 9 開始,預設情況下該内容庫已從 bootclasspath 中移除且不可用于應用。且Android P 限制了明文流量的網絡請求,非加密的流量請求都會被系統禁止掉。

錯誤日志:

 CLEARTEXT communication to XXXXXXXX not permitted by network security policy

解決:

在res目錄下建立xml檔案夾,檔案夾中建立檔案network_security_config.xml,檔案内容如下

<network-security-config>
    <base-config cleartextTrafficPermitted="true" />
</network-security-config>      

在AndroidManifest.xml檔案中,Application标簽下添加如下屬性:

android:networkSecurityConfig="@xml/network_security_config"      

完美解決

本部落格借鑒了另一篇部落格, 原文:https://blog.csdn.net/weixin_33698823/article/details/86905689 

十分感謝