开发Android应用程序,在Android10的系统上提示网络出错?
今天维护以前开发的一个Android客户端程序,发版后,有用户说自己手机安装,无法登录,首屏打开后(有网络通过接口加载服务器数据并显示的行为),提示网络出错。
但是我在我自己手上的PDA设备(Android 4.4)正常,然后又去找了一台Android设备,是Android8.0的,也正常。初步怀疑是高版本没兼容的问题
马上把问题丢到Chatgpt ,它给我的回答如下:
看到第二条,我就感觉是了。马上修改客户端请求为https,发现就可以正常加载数据了。搜索引擎们颤抖吧,现在有问题已经优先问chatgpt而不是搜了
如果不愿意搞服务器端配置https,也可以让客户端允许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文件下的application标签增加以下属性: android:networkSecurityConfig="@xml/network_security_config"
这样子,这个客户端就允许加载http请求的内容了。