小米不连接ws,其他手机是的

Xiaomi does not connect ws, other mobile phones yes

我用我的小米 9 SE 开发的应用程序有问题,而我的其他(旧)手机如 BQ M5 或某些三星则没有。

我的应用程序连接到网络服务以获取一些信息。我有 3 个用于此 Web 服务的环境:测试(在本地 LAN 中的 PC 中)、预生产和生产。

测试:“http://10.60.8.223:8080/ws/webservice.wsdl”; (小米不连接,其他连接)

PRE: "https://ws-pre.myaplication.com/ws/webservice.wsdl"; (全部连接正确)

专业版:“https://ws-pro.myaplication.com/ws/webservice.wsdl”; (全部连接正确)

使用任何其他手机我连接到 3 个环境,但是使用小米我无法连接到正在调试 Web 服务的测试 url。

你知道这是怎么回事吗? 我可以尝试什么? 也许小米阻止http连接但承认https?

非常感谢您。 阿德里安.

我已经解决了:

在 RES 文件夹中创建一个名为 network_security_config.xml 的 xml 文件。

<?xml version="1.0" encoding="utf-8"?>
<network-security-config xmlns:android="http://schemas.android.com/apk/res/android">
    <base-config cleartextTrafficPermitted="true">
        <trust-anchors>
            <certificates src="system" />
        </trust-anchors>
    </base-config>
</network-security-config>

在 Android 清单中,在应用程序标签内:

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

你也可以这样做。

<?xml version="1.0" encoding="utf-8"?>
<manifest ...>
    <uses-permission android:name="android.permission.INTERNET" />
    <application
        ...
        android:usesCleartextTraffic="true"
        ...>
        ...
    </application>
</manifest>