如何在带有Android 6.0.1的Xiomi Redmi 3S中解决不允许的明文流量问题

时间:2019-05-09 12:04:13

标签: android android-manifest

当我使用带有 http 的URL时,它将显示错误“ 网络安全策略不允许与(域名)进行CLEARTEXT通信 “。我已经在manifest.xml文件中尝试 cleartextTrafficPermitted = true,但是它与我使用的支付网关不兼容,这需要cleartextTrafficPermitted = false。由于它是API级别23,因此 networkSecurityConfig =“ @ xml / network_security_config”在其中不起作用。我正在使用Retrofit作为网络库。

这是特定于设备的问题Xiomi Redmi 3S,MIUI Global 10.2,Android版本6.0.1。

有关此问题的任何建议。

1 个答案:

答案 0 :(得分:0)

最后,我通过medium post得到了解决方案,我使用的代码是:

  • 步骤1:创建文件:res / xml / network_security_config.xml 在此文件中添加代码:
<?xml version="1.0" encoding="utf-8"?>
<network-security-config>
<base-config cleartextTrafficPermitted="true" />
<domain-config cleartextTrafficPermitted="true">
        <domain includeSubdomains="true">Your URL(ex: 127.0.0.1)</domain>
    </domain-config>
</network-security-config>
  • 第2步:在AndroidManifest.xml中添加行
<?xml version="1.0" encoding="utf-8"?>
<manifest ...>
    <uses-permission android:name="android.permission.INTERNET" />
    <application
        ...
        android:networkSecurityConfig="@xml/network_security_config"
        ...>
        ...
    </application>
</manifest>