私はすでにカスタムネットワークセキュリティ設定を定義し、推奨されるようにマニフェストに含めました here
res/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
編集:アップデート(2018年8月21日)この問題を「修正」した後、アプリがインストールされてから数時間後にDownloadManagerが不可解にクリアテキストHTTPの受け入れを停止したようです。
何が起こっているのか説明できません。デバイスを再起動すると、しばらくの間正常に動作し、DownloadManagerはクリアテキストを再度拒否します。私はこれをAndroid Pバグとして解決することを願っています。
編集2:更新(2019年1月17日)私のpixel2は現在実行中Android 9 2019年1月5日からのパッチで、問題は見当たりません(だからこれは8月以降のパッチで解決されたと思います。
XML res/xml/network_security_config.xmlを作成します
<?xml version="1.0" encoding="utf-8"?>
<network-security-config>
<base-config cleartextTrafficPermitted="true" />
</network-security-config>
AndroidManifest.xml内のタグアプリケーションでこのファイルを参照します。のような:
Android:networkSecurityConfig="@xml/network_security_config"