首先,讲一讲unity3d中的一些目录,不是Assets下的Resources等特殊文件夹,而是系统读写目录:
IOS:
Application.dataPath : Application/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/xxx.app/Data
Application.streamingAssetsPath : Application/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/xxx.app/Data/Raw
Application.persistentDataPath : Application/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/Documents
Application.temporaryCachePath : Application/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/Library/Caches
Android:
Application.dataPath : /data/app/xxx.xxx.xxx.apk
Application.streamingAssetsPath : jar:file:///data/app/xxx.xxx.xxx.apk/!/assets
Application.persistentDataPath : /data/data/xxx.xxx.xxx/files
Application.temporaryCachePath : /data/data/xxx.xxx.xxx/cache
Windows:
Application.dataPath : /Assets
Application.streamingAssetsPath : /Assets/streamingAssetsPath
Application.persistentDataPath : /xxx/xxx/xxx
Application.temporaryCachePath : /xx/xx/xx
dataPath:程序安装目录,或者说程序根目录,只读
streamingAssetsPath:未被压缩的资源存储目录,只读
persistentDataPath:持久化数据目录,沙盒目录,通常作为存盘目录,读写
temporaryCachePath:临时缓存目录,会被系统回收,可存放下载的临时文件,读写
在Windows下,Resources下面的资源不压缩,所以可以使用datapath/Resouces获取,而在IOS和Android下面,Resources目录资源被压缩,此方法无法获取Resouces目录下的资源,必须使用Resources.Load或者别的系统方法才能获取Resources目录下的资源。streamingAssetsPath下的资源可WWW类获取。所以,通常情况下真机运行时dataPath不会使用到。
本文出自 “山重水复” 博客,谢绝转载!
原文地址:http://huanghaitao.blog.51cto.com/10005736/1908694