Подтвердить что ты не робот

Как решить Android P DownloadManager, останавливаясь с "HTTP-трафик Cleartext до 127.0.0.1 не разрешен"?

Я уже определил пользовательскую конфигурацию безопасности сети и включил ее в свой манифест, как рекомендовано здесь

Рез /XML/network_security_config.xml:

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

и это в моем Android.manifest:

    <application android:icon="@drawable/icon" 
             android:allowBackup="false"
             android:usesCleartextTraffic="true"
             android:networkSecurityConfig="@xml/network_security_config"
             android:label="@string/app_name"
             android:theme="@style/AppTheme"
             android:persistent="true" >

Даже с этими изменениями при попытке связаться через HTTP с 127.0.0.1 я вижу это в logcat:

08-09 10:50:34.395 30791  3607 D NetworkSecurityConfig: Using Network Security Config from resource network_security_config debugBuild: true
08-09 10:50:34.397 30791  3607 D NetworkSecurityConfig: Using Network Security Config from resource network_security_config debugBuild: true
08-09 10:50:34.401 30791  3607 W DownloadManager: [647] Stop requested with status HTTP_DATA_ERROR: Cleartext HTTP traffic to 127.0.0.1 not permitted
08-09 10:50:34.402 30791  3607 D DownloadManager: [647] Finished with status WAITING_TO_RETRY

РЕДАКТИРОВАТЬ: Обновление (21 августа 2018 г.) после "исправления" этой проблемы кажется, что через пару часов после установки приложения DownloadManager загадочным образом прекращает принимать HTTP-текст в открытом виде.

Я не могу объяснить, что происходит. Если я перезагружаю устройство в течение некоторого времени, все работает отлично, тогда DownloadManager снова отказывается от открытого текста. Я списываю это как ошибку Android P, которая, я надеюсь, будет решена.

РЕДАКТИРОВАТЬ 2: Обновление (17 января 2019 года) мой pixel2 теперь работает под управлением Android 9 с патчем от 5 января 2019 года, и я больше не вижу проблему (пока). Я предполагаю, что это было решено в каком-то патче с августа.

4b9b3361

Ответ 1

Создание XML res/xml/network_security_config.xml

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

Ссылка на этот файл в тэге Application, внутри AndroidManifest.xml. Подобно:

android:networkSecurityConfig="@xml/network_security_config"