Android版本28使用http請求報錯not permitted by network security policy

Android版本28使用http請求報錯not permitted by network security policyjava

android模擬器調試登陸的時候報錯 CLEARTEXT communication to to 52.76.xx.xxx not permitted by network security policyandroid

2018-10-17 20:42:09.532 18048-18048/com.aax.exchange E/ProgressObserver____: onError: 
java.net.UnknownServiceException: CLEARTEXT communication to 52.76.xx.xxx not permitted by network security policy

問題: 因爲 Android P(版本27以上) 限制了明文流量的網絡請求,非加密的流量請求都會被系統禁止掉。
若是當前應用的請求是 htttp 請求,而非 https ,這樣就會導系統禁止當前應用進行該請求安全

推薦的作法是服務器和本地應用都改用 https ,測試時爲了方便使用http,上線時應該都會用https才比較安全。服務器

解決辦法:1.在 res 下新建一個 xml 目錄,而後建立一個名爲:network_security_config.xml 文件 ,該文件內容以下:網絡

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

在 AndroidManifest.xml application增長配置android:networkSecurityConfig="@xml/network_security_config"測試

後不報錯了加密

2:服務器和本地應用都改用 https (推薦).net

3:targetSdkVersion 降級回到 27調試

相關文章
相關標籤/搜索