Android Kotlin网络错误-未指定网络安全配置

时间:2019-09-25 08:20:27

标签: android networking kotlin

我正在尝试通过Android中的kotlin连接到api。但我还是出错

未使用平台默认值指定网络安全配置。

从资源ntwork_security_config debugBuild:true使用网络安全。

我已经在res / xml文件夹中添加network_security_config.xml。谁能帮助我解决这个问题?

下面是一些屏幕截图

enter image description here

enter image description here

enter image description here

3 个答案:

答案 0 :(得分:1)

您的network-security-config应该类似于以下内容:

<?xml version="1.0" encoding="utf-8"?>
<network-security-config>
    <domain-config cleartextTrafficPermitted="true">
        <domain includeSubdomains="true">enter domain here</domain>
    </domain-config>
</network-security-config>

示例:

如果您的网络呼叫将请求发送到该域:

www.myapp.com/api/something

然后,您的network-security-config如下所示:

<?xml version="1.0" encoding="utf-8"?>
<network-security-config>
    <domain-config cleartextTrafficPermitted="true">
        <domain includeSubdomains="true">www.myapp.com</domain>
    </domain-config>
</network-security-config>

答案 1 :(得分:0)

您需要在您的类文件的onCreate中添加此StrictMode策略。

StrictMode.ThreadPolicy policy = new 
StrictMode.ThreadPolicy.Builder().permitAll().build();
StrictMode.setThreadPolicy(policy);

答案 2 :(得分:0)

尝试使用它,并从清单中删除android:usesCleartextTraffic =“ true”。

<?xml version="1.0" encoding="utf-8"?>
<network-security-config>
    <base-config cleartextTrafficPermitted="true">
        <trust-anchors>
            <certificates src="system" />
        </trust-anchors>
    </base-config>
</network-security-config>