Starting with Android 9 (API level 28), cleartext support is disabled by default.
方法一:
首先试一下把 "http://" 改成 "https://"
方法二:
创建文件:res/xml/network_security_config.xml
<?xml version="1.0" encoding="utf-8"?>
<network-security-config>
<domain-config cleartextTrafficPermitted="true">
<domain includeSubdomains="true">api.example.com(to be adjusted)</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>
方法三:
在AndroidManifest.xml文件中添加
android:usesCleartextTraffic="true"
就像这样:
<?xml version="1.0" encoding="utf-8"?>
<manifest ...>
<uses-permission android:name="android.permission.INTERNET" />
<application
...
android:usesCleartextTraffic="true"
...>
...
</application>
</manifest>
方法四:
如果在<manifest>
中有android:targetSandboxVersion
,把它减少为1
AndroidManifest.xml:
<?xml version="1.0" encoding="utf-8"?>
<manifest android:targetSandboxVersion="1">
<uses-permission android:name="android.permission.INTERNET" />
...
</manifest>