Unity开发Android,关于StreamingAssets和持久化路径坑点

一、Android平台下,使用File 去读取StreamingAssets目录下的文件无法读到

原因: 在Android平台下,Unity打包出来的文件,StreamingAssets 目录会被压缩成一个jar的包,因此使用File无法读取到路径。

解决: 可以使用UnityWebRequest去读取,具体为啥UnityWebRequest可以读压缩包内的内容还不清楚。

二、Android平台下,使用UnityWebRequest去读持久化目录下的文件无法读到

原因: 在Unity中,如果使用**UnityWebRequest** 来读取本地文件,会导致"Cannot connect to destination host"错误,因为**UnityWebRequest**是用于与Web服务器进行通信的类,而不是用于读取本地文件的。

**解决:**1、已经放在持久化目录下了,那可以直接使用File去读

2、非要使用UnityWebRequest 去读本地文件的话,那么需要在路径上添加file://

问题: 1、这里我还是用UnityWebRequest 去读本地的生资源,因为File 这个只提供了直接读成 byte[]string 两种。而我需要直接读取**图片,音频一类,**UnityWebRequest有提供直接读取图片及音频的API。

2、尝试直接使用File 去读取图片的byte[] 数据,再通过texture.LoadImage 把字节转成图片。与直接使用UnityWebRequest 去读取20张图片。两者比较:直接使用UnityWebRequest 去读图片比File去读图片的字节数再手动转成图片效率要快十几倍。

相关推荐
shix .11 小时前
spiderdemo-T8字体反扒
android
青小莫12 小时前
C++之模板
android·java·c++
装不满的克莱因瓶12 小时前
Android Studio 的模拟器如何上传本地图片到手机相册
android·智能手机·android studio
孟无岐12 小时前
【Laya】Ease 缓动函数
typescript·游戏引擎·游戏程序·laya
yi碗汤园13 小时前
【超详细】TCP编程与UDP编程
网络·网络协议·tcp/ip·unity·udp·visual studio
teunyu13 小时前
在Unity中使用LineRenderer实现A点到B点的贝塞尔曲线。并且曲线为虚线。方向为A点流向B点。效果图如下
unity·游戏引擎
三金1213813 小时前
深入解析MySQL EXPLAIN
android
_李小白13 小时前
【Android 美颜相机】第十一天:GPUImageFilter解析
android·数码相机
速冻鱼Kiel13 小时前
GASP笔记03
笔记·ue5·游戏引擎·虚幻
nnsix13 小时前
Unity URP用于 光照贴图(Lightmap)的材质Shader
unity·材质·贴图