Android版本28使用http請求報錯not permitted by network security policyhtml
android模擬器調試登陸的時候報錯 CLEARTEXT communication to to 52.76.xx.xxx not permitted by network security policyjava
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 ,這樣就會導系統禁止當前應用進行該請求android
推薦的作法是服務器和本地應用都改用 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>網絡
在 AndroidManifest.xml application增長配置android:networkSecurityConfig="@xml/network_security_config"app
後不報錯了測試
2:服務器和本地應用都改用 https (推薦)加密
3:targetSdkVersion 降級回到 27.net
(轉載:https://www.cnblogs.com/zdz8207/p/Android-28-http-https.html)