- Android9为了数据传输更加安全高效,故将要求默认使用加密连接,这意味这Android P将禁止app使用所有未加密的连接,因此Android P系统的安卓设备无论是接收或者发送流量,未来都不能明码传输,这也意味着http要被https代替。
解决办法:
-
方法一
- 将TargetSdkVersion设置未27,低于28就可用。(没有试过具体如何操作)
-
方法二
-
找到AndroidManifest.xml问文件
<?xml version="1.0" encoding="utf-8"?> <network-security-config> <domain-config cleartextTrafficPermitted="true"> <domain includeSubdomains="true">localhost</domain> </domain-config> </network-security-config> (原文件)
-
修改原文件(第一次构建就行了,不用再构建,直接运行即可)
<?xml version="1.0" encoding="utf-8"?> <network-security-config> <base-config cleartextTrafficPermitted="true" /> </network-security-config>
-
-
方法三
- 将后端修改未https请求,这虽然在测试阶段可以使用openssl生成签名文件,但是正式发布的时候,还需要买,不划算。