Android 8: открытый HTTP-трафик не разрешен

563
задан david.s 29 August 2017 в 13:48
поделиться

8 ответов

Начиная с (Уровня API 28) Android 9.0, поддержка открытого текста отключена по умолчанию. Опция 1 - Создает файл res/xml/network_security_config.xml -

<?xml version="1.0" encoding="utf-8"?>
<network-security-config>
    <domain-config cleartextTrafficPermitted="true">
        <domain includeSubdomains="true">Your URL(ex: 127.0.0.1)</domain>
    </domain-config>
</network-security-config>

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>

Опция 2 - AndroidManifest.xml -

<?xml version="1.0" encoding="utf-8"?>
<manifest ...>
    <uses-permission android:name="android.permission.INTERNET" />
    <application
        ...
        android:usesCleartextTraffic="true"
        ...>
        ...
    </application>
</manifest>
0
ответ дан developergeet 28 July 2019 в 17:35
поделиться

В моем случае, что URL не работает в браузере также.

я сверяюсь https://www.google.com /

webView.loadUrl("https://www.google.com/")

, И он работал на меня.

0
ответ дан Mayuresh Deshmukh 29 August 2019 в 17:27
поделиться
  • 1
    Привет отредактировали мой ответ, чтобы сделать проверяют его? Я думаю, что нашел лучший путь. – lozadaOmr 9 February 2014 в 04:19

После измененной версии 9.0 API, получающей ошибочный Трафик HTTP Открытого текста на YOUR-API.DOMAIN.COM, не разрешенный (targetSdkVersion = "28"). в xamarin, xamarin.android и студии андроида.

Два шага для решения этой ошибки в xamarin, xamarin.android и студии андроида.

Шаг 1: Создайте файл resources/xml/network_security_config.xml

В network_security_config.xml

<?xml version="1.0" encoding="utf-8" ?>
<network-security-config>
  <domain-config cleartextTrafficPermitted="true">
    <domain includeSubdomains="true">mobapi.3detrack.in</domain>
  </domain-config>
</network-security-config>

Шаг 2: обновление AndroidManifest.xml -

Добавляет android:networkSecurityConfig = "xml/network_security_config" на теге приложения. например:

<application android:label="your App Name" android:icon="@drawable/icon" android:networkSecurityConfig="@xml/network_security_config">
0
ответ дан Ripdaman Singh 4 November 2019 в 07:05
поделиться

добавление этого параметра в заголовке решило мой вопрос в apiSauce, Реагируют Собственный компонент

"Content-Type": "application/x-www-form-urlencoded",
  Accept: "application/json"
1
ответ дан 22 November 2019 в 21:24
поделиться

Просто добавьте android:usesCleartextTraffic = "верный" в в файле

AndroidManifest.xml
1
ответ дан 22 November 2019 в 21:24
поделиться

Создайте файл - res / xml / network_security.xml

В network_security.xml->

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

Открывает AndroidManifests.xml:

 android:usesCleartextTraffic="true" //Add this line in your manifests

<application
        android:allowBackup="true"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:roundIcon="@mipmap/ic_launcher_round"
        android:supportsRtl="true"
        android:usesCleartextTraffic="true"
        android:theme="@style/AppTheme">
0
ответ дан 22 November 2019 в 21:24
поделиться
  1. Удостоверяются, что у Вас есть следующее в Вашем config.xml в ионическом Проекте:

    <edit-config file="app/src/main/AndroidManifest.xml" mode="merge" target="/manifest/application" xmlns:android="http://schemas.android.com/apk/res/android">
                <application android:networkSecurityConfig="@xml/network_security_config" />
                <application android:usesCleartextTraffic="true" />
            </edit-config>
    
  2. Выполнение ионный андроид сборки Cordova. Это создает папку Android под Платформами

  3. , Открывают Android Studio и открывают папку Android, существующую в нашем андроиде платформ проекта проекта. Оставьте его в течение нескольких минут так, чтобы это создало gradle

  4. После того, как gradle build закончен, мы получаем некоторые ошибки для включения minSdVersion в manifest.xml. Теперь то, что мы делаем, просто удаляют <uses-sdk android:minSdkVersion="19" /> от manifest.xml.

    Удостоверяются его удаленный от обоих местоположения:

    1. приложение → декларации → AndroidManifest.xml.
    2. CordovaLib → декларации → AndroidManifest.xml.

    Теперь попытка создать gradle снова и теперь это создает успешно

  5. , Удостоверяются, что у Вас есть следующее в Теге приложения в Приложении → декларация → Androidmanifest.xml:

    <application
    android:networkSecurityConfig="@xml/network_security_config"  android:usesCleartextTraffic="true" >
    
  6. Открывают network_security_config (приложение → res → xml → network_security_config.xml).

    Добавляют следующий код:

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

Здесь xxx.yyyy.com ссылка Вашего API HTTP. Удостоверьтесь, что Вы не включаете Http перед URL.

Примечание: Теперь создайте приложение с помощью Studio Android (Сборка - Пакет/APK Сборки - Сборка APK), и теперь можно использовать то Приложение, и это хорошо работает в Кругу Android. При попытке создать приложение с помощью ионного андроида сборки Cordova, это переопределяет все эти настройки, так удостоверьтесь, что Вы используете Studio Android для разрабатывания Проекта.

, Если у Вас есть какие-либо более старые версии установленного приложения, Удалите их и дайте попытку, или иначе Вас оставят с некоторой ошибкой:

Приложение, не Установленное

0
ответ дан 22 November 2019 в 21:24
поделиться

Для Xamarin. Разработчики Android удостоверяются, реализация HttpClient и SSL/TLS установлены на Значение по умолчанию.

Это может быть найдено под Опциями Andorid-> Усовершенствованные Опции Android.

enter image description here

0
ответ дан 22 November 2019 в 21:24
поделиться
Другие вопросы по тегам:

Похожие вопросы: