Android P系統的設備上 java.net.UnknownServiceException: CLEARTEXT communication to XXXXXXX not permitted by network security policy


在Android P系統的設備上,如果應用使用的是非加密的明文流量的http網絡請求,則會導致該應用無法進行網絡請求,https則不會受影響,同樣地,如果應用嵌套了webview,webview也只能使用https請求。

 

針對這個問題,有以下三種解決方法:

(1)APP改用https請求

(2)targetSdkVersion 降到27以下

(3)更改網絡安全配置

前面兩個方法容易理解和實現,具體說說第三種方法,更改網絡安全配置。

1.在res文件夾下創建一個xml文件夾,然后創建一個network_security_config.xml文件,文件內容如下:

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

2.接着,在AndroidManifest.xml文件下的application標簽增加以下屬性:

    <application
    ...
     android:networkSecurityConfig="@xml/network_security_config"
    ...
        />

OK啦!!!


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM