Xiaomi не подключает ws, другие мобильные телефоны да - PullRequest
0 голосов
/ 10 июля 2020

У меня проблема в приложении, которое я разрабатываю с моим Xiaomi Mi 9 SE, которого нет на других моих (старых) телефонах, таких как BQ M5 или некоторых Samsung.

Мое приложение подключается к веб-службе чтобы получить некоторую информацию. У меня есть 3 среды для этой веб-службы: тест (в P C в локальной сети), предварительная подготовка и производство.

Тест: «http://10.60.8.223: 8080 / ws / webservice.wsdl»; (Xiaomi не подключается, другие - да)

PRE: «https://ws-pre.myaplication.com/ws/webservice.wsdl»; (Все подключаются правильно)

PRO: "https://ws-pro.myaplication.com/ws/webservice.wsdl"; (Все подключаются правильно)

С любыми другими мобильными телефонами я подключаюсь к 3 средам, но с Xiaomi я не могу подключиться к ТЕСТОВОМ URL, где я отлаживаю веб-службу.

У вас знаете что происходит? Что я могу попробовать? Может быть, Xiaomi блокирует http-соединение, но допускает https?

Заранее большое спасибо. Адриан.

Ответы [ 2 ]

0 голосов
/ 13 июля 2020

Вы также можете это сделать.

<?xml version="1.0" encoding="utf-8"?>
<manifest ...>
    <uses-permission android:name="android.permission.INTERNET" />
    <application
        ...
        android:usesCleartextTraffic="true"
        ...>
        ...
    </application>
</manifest>
0 голосов
/ 13 июля 2020

Я решил это:

Создайте xml файл с именем network_security_config. xml в папке RES.

<?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">
...