Unity特殊文件夾的權限方式記錄
解釋:
編輯器 :開發時的編輯器(包含pc,mac)
Application.dataPath路徑
平臺 | 讀 | 寫 | IO操作 |
---|---|---|---|
編輯器 | OK | OK | OK |
IOS | OK | X | OK |
Android | X | X | X |
Application.streamingAssetsPath路徑
描述 :
- 路徑下的文件目錄結構和文件會原封不動的打包進安裝包裏面
- 在Android平臺,它的路徑如下,StreamingAssets目錄下的文件被壓縮到一個.jar文件中,可以通過www的方式獲得壓縮文件中真正的數據(只可讀,不可寫)。
“jar:file://” + Application.dataPath + “!/assets/”;
不使用外部庫工具 :使用WWW可以全平臺讀
平臺 | 讀 | 寫 | IO操作 | WWW |
---|---|---|---|---|
編輯器 | OK | OK | OK | 建議用IO |
IOS | OK | OK | OK | 建議用IO |
Android | OK | X | X | OK |
平臺 | WWW訪問 | IO訪問 |
---|---|---|
編輯器 | 建議用IO | Application.streamingAssetsPath |
IOS | 建議用IO | Application.streamingAssetsPath 或Application.dataPath + “/Raw”; |
Android | Application.streamingAssetsPath 或 “jar:file://” + Application.dataPath + “!/assets/”; | X |
使用外部庫工具
如果採用第三方解壓縮庫操作發佈apk,可以實現Android平臺的讀寫權限(全平臺的讀寫權限)。
如:對比lzma,gzip,Ionic.Zip選擇第三方類庫是SharpZipLib。實例代碼如下:
voidShowFileList(stringpath)
{
using(ZipFilezip =newZipFile(path))
{
foreach(ZipEntryentryinzip)
Debug.Log(entry.Name);
}
}
平臺 | 讀 | 寫 | IO操作 |
---|---|---|---|
編輯器 | OK | OK | OK |
IOS | OK | OK | OK |
Android | OK | OK | OK |
Application.persistentDataPath路徑
描述 :
- 在ios,Android平臺,它指向一處公共目錄(比如手機的內存卡),當玩家拔除內存卡此目錄就失效了.
平臺 | 讀 | 寫 | IO操作 |
---|---|---|---|
編輯器 | OK | OK | OK |
IOS | OK | OK | OK |
Android | OK | OK | OK |
Application.temporaryCachePath路徑
平臺 | 讀 | 寫 | IO操作 |
---|---|---|---|
編輯器 | OK | OK | OK |
IOS | OK | OK | OK |
Android | OK | OK | OK |
Hello ,I am 李本心明
首先謝謝大家的支持,其次如果你碰到什麼其他問題的話,歡迎來 我自己的一個 討論羣559666429
來(掃掃下面二維碼或者點擊羣鏈接 Unity3D[ 交流&副業]CLUB ),大家一起找答案,共同進步。 同時歡迎各大需求商入住,發佈自己的需求,給羣內夥伴提供副職,賺取外快。對了,資源的話,要在羣公告裏面找。
由於工作生活太忙了,對於大家的幫助時間已經沒有之前那麼充裕了。如果有志同道合的朋友,可以接受無償的幫助別人,可以單獨聯繫我,一塊經營一下。
如果你有更好的經營方式也來練習我,加我QQ