在刚做的项目中,使用 www 和 UnityWebRequest 两种方式下载文件。
在PC上是正常下载的,但到了安卓,就不能下载。输出下载进度,显示为下载进度为1,下载的数据量为0
找不到原因,只能查看安卓日志
在Android DeviceMonitor输出日志发现:
java.io.IOException: Cleartext HTTP traffic to 118.25.58.194 not permitted
翻译过来就是:
java.io.IOException:不允许到118.25.58.194的明文HTTP通信
查阅资料发现:
“为保证用户数据和设备的安全,Google针对下一代 Android 系统(Android P) 的应用程序,将要求默认使用加密连接,这意味着 Android P 将禁止 App 使用所有未加密的连接,因此运行 Android P 系统的安卓设备无论是接收或者发送流量,未来都不能明码传输。”
所以解决办法就是:
方法1、后端将http升级为https
方法2、在Unity——AndroidManifest文件——application节点下添加权限:
<application android:usesCleartextTraffic="true">
大家还有什么问题,欢迎在下方留言!