在 Android API 29 (Pie, 9) 中,默认情况下,应用程序的网络请求都需要通过明确定义的清单文件中注册的网络安全配置来进行。这意味着所有的应用程序网络请求都必须使用 HTTPS 协议,而不是 HTTP。
如果你需要允许你的应用进行某些 HTTP 请求,你可以通过在你的应用如下设置
首先,在 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
中添加以下代码:
<uses-library android:name ="org.apache.http.legacy" android:required ="false"/>
<application
...
android:networkSecurityConfig="@xml/network_security_config"
...>
...
</application>
implementation "commons-logging:commons-logging:1.2"