各平台Path

it2025-10-03  5

简介

三个路径:dataPath,persistentDataPath,streamingAssetsPath三个平台:pc,android,ios两个操作:读写

个人项目,项目名路径略有不同


pc

路径(Application+filename)

dataPath:项目所在Assets

C:/Users/yan/Documents/My/Assets\an.txt

persistentDataPath:用户数据目录

C:/Users/yan/AppData/LocalLow/DefaultCompany/My\an.txt

streamingAssetsPath:项目所在StreamingAssets

C:/Users/yan/Documents/My/Assets/StreamingAssets\an.txt

读(Application+filename)

file/stream:路径不变www:路径不变

写(Application+filename)

路径不变

总结:

关于streamingAssetsPath与dataPath:

streamingAssetsPath+filename=dataPath+/StreamingAssets+filename


android(datapath没用 省略 被安卓折腾过 写一下实践的心得)

路径(Application+filename)

dataPath:

/data/app/com.Test.My-O-idvgtI6c9rTHCFMUj9RA==/base.apk/an.txt

persistentDataPath:

/storage/emulated/0/Android/data/com.Test.My/files/an.txt

streamingAssetsPath:

jar:file:///data/app/com.Test.My-O-idvgtI6c9rTHCFMUj9RA==/base.apk!/assets/an.txt

读(Application+filename)

file/stream:

persistentDataPath:ok

streamingAssetsPath:无

www:

persistentDataPath:ERROR(输出为Accept)

streamingAssetsPath:ok

读(file://+Application+filename)

file/stream:

persistentDataPath:无

streamingAssetsPath:无

www:

persistentDataPath:ok

streamingAssetsPath:无

写(Application+filename)

persistentDataPath:

/storage/emulated/0/Android/data/com.Test.My/files/an.txt

streamingAssetsPath:

ERROR(移动端此目录只读)

总结:

dataPath:不用

只读:streamingAssetsPath,必须WWW加载,路径名:Application+filename

(只读不可删除,放二进制文件,尽量不放ab包,ad包解压后原文件还在)

读写:persistentDataPath,一种file/stream读写,路径名:Application+filename

另一种WWW加载,路径名:file://+Application+filename

(生成文件文件夹可看到,运行时才能写入读取)

打包WritePermission尽量选择SD卡,沙盒模式需要Root看到目录,而且新型和老式有点区别,要是手机没有SD,会自己装在沙盒

有文件需要读写,可以将要读写文件放入Resources或者streamingAssetsPath,开始的时候就将文件从Resources或streamingAssetsPath拷贝到persistentDataPath

关于streamingAssetsPath与dataPath:

streamingAssetsPath+filename=jar:file://+dataPath+!/assets/+filename


最新回复(0)