从 Android 9 (API 28) 开始,默认禁止应用访问非加密的 HTTP 明文流量。若你的服务器使用 HTTP 协议,需在应用中明确允许明文传输。
1,创建网络安全配置文件 res/xml/network_security_config.xml
:
<?xml version="1.0" encoding="utf-8"?>
<network-security-config>
<base-config cleartextTrafficPermitted="true">
<trust-anchors>
<certificates src="system" />
</trust-anchors>
</base-config>
<!-- 允许所有域名的 HTTP 请求 -->
<domain-config cleartextTrafficPermitted="true">
<domain includeSubdomains="true">192.168.205.155</domain> //换成自己的ip
</domain-config>
</network-security-config>
2,在 AndroidManifest.xml
的 <application>
标签中添加配置:
<application
...
android:networkSecurityConfig="@xml/network_security_config" >