最近在做公司产品,一期完成,打包给测试,然后。。。。一台手机连服务器都访问不了看日志如下:
UnityWebRequest返回code:0,显示Unknow error
服务器接口是http://非域名
找资料发现是从Android 6.0开始引入了对Https的推荐支持,与以往不同,Android P的系统上面默认所有Http的请求都被阻止了。
所以,Http的服务器地址在9.0的系统就没办法访问了。。。
解决这个问题最好当然是把Http换成Https了,然鹅,上级说先不支持。。。。。。
没办法,只有通过在AnroidManifest.xml中的application显示设置
android:usesCleartextTraffic="true"
然而发现没什么作用
网上看了一下有三种方法,第二种本人测试有用,而且在Unity里设置很方便
1)使用Https请求替换Http请求。既然官方都说了用Https更安全,那就替换成Https。
2)将targetSdkVersion降到27以下。曲线救国,既然从28开始不支持Http,那么我就用28以下的版本。
Build Setting -> Target API Level
3)更改网络安全配置