1. 程式人生 > >unity3d各平臺的路徑問題

unity3d各平臺的路徑問題

歡迎加入U3D交流群,群號碼:308093702~~~~ 前幾天我做專案測試,需要獲取儲存拍的照片,在unity3d中,路徑總是沒什麼問題的,但是在移動平臺上,經查發現Application.temporaryCachePath和Application.persistentDataPath返回空字串。便花時間認真研究了一下Unity3D的路徑問題。我們常用的是以下四個路徑: Application.dataPath  Application.streamingAssetsPath  Application.persistentDataPath  Application.temporaryCachePath 
根據測試,詳細情況如下: 一.在專案根目錄中建立Resources資料夾來儲存圖片 可以使用Resources.Load("檔名字,注:不包括檔案字尾名");把資料夾中的物件加載出來。 注:此方可實現對檔案實施“增刪查改”等操作,但打包後不可以更改了。 二.直接放在專案根路徑下來儲存檔案 在直接使用Application.dataPath來讀取檔案進行操作。 注:移動端是沒有訪問許可權的。 三.在專案根目錄中建立StreamingAssets資料夾來儲存檔案。 1.可以使用Application.dataPath來讀取檔案進行操作。 [C#] #if UNITY_EDITOR string filepath=Application.dataPath+"/StreamingAssets"+"/photo.jpg";
#elif UNITY_IPHONE string filepath=Application.dataPath+"/Ray"+"/photo.jpg"; #elif UNITY_android string filepath="jar:file://"+Application.dataPath+"!/assets/"+"/photo.jpg"; #endif 2.直接使用Application.streamingAssetsPath來讀取檔案進行操作。 注:此方法在pc/Mac電腦中可以實現對檔案實施“增刪查改”等操作,但在移動端只支援讀取操作。 四.使用Application.streamingAssetsPath來操作檔案(薦)。
改檔案存在手機沙盒中,因為不能直接存放檔案, 1.通過伺服器直接下載儲存到該位置,也可以通過Md5碼比對下載更新新的資源 2.沒有伺服器的,只有間接通過檔案流的方式從本地讀取並寫入Application.persistentDataPath檔案下,然後在通過Application.persistentDataPath來讀取操作。 注:在Pc/Mac電腦以及Android跟Ipad、iphone都可對檔案進行任意操作,另外在IOS上對該目錄下的東西可以被iCloud自動備份。 五.使用Application.temporaryCachePath來操作檔案 操作方式跟上面Application.persistentDataPath類似。除了在IOS上不能被iCloud自動備份。 下圖是幾種檔案在Pc中路徑的具體位置
unity路徑的使用以及注意點都總結了,現在還是送點乾糧給大家吧,都是開發中常用的東西 1.對檔案的操作類,主要就是文流讀取操作的一些東西 C# //照片變數 public GameObject[] Images; /// <summary> /// 協程為照片變數賦值(圖片) /// </summary> /// <returns></returns> IEnumerator LoadWWWAllPicture() { //獲取路徑下的照片 string[] streamingPath = Directory.GetFiles(Application.persistentDataPath + "/"); for (int i = 0, j = 0; i < streamingPath.Length; i++, j++) { WWW www = new WWW("file:///" + streamingPath[i]); yield return www; if (www.isDone && www != null) { Images[j].GetComponent<UITexture>().mainTexture = www.texture; //為獲取到的圖片賦上名字 Images[j].GetComponent<UITexture>().mainTexture.name = streamingPath[i]; Debug.Log(Images[j].GetComponent<UITexture>().mainTexture.name); www.Dispose(); } } }

相關推薦

Unity3D平臺路徑(包括手機內建儲存路徑、SD卡等等)

  關於Unity3D在各平臺上的路徑問題,網上有好多的資料,如下是比較好的參考資料: 1、http://www.manew.com/thread-23491-1-1.html 2、http://www.xuanyusong.com/archives/2656   這裡我不詳

Unity3D平臺路徑

Application.dataPath :                    Application/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/xxx.app/DataApplication.streamingAssetsPath : Application/xxxxxx

Unity3D-平臺檔案讀寫操作路徑目錄

public string AssetCachesDir { get { string dir = ""; #if UNITY_E

unity3d平臺路徑問題

歡迎加入U3D交流群,群號碼:308093702~~~~ 前幾天我做專案測試,需要獲取儲存拍的照片,在unity3d中,路徑總是沒什麼問題的,但是在移動平臺上,經查發現Application.temp

unity平臺路徑,存放資料!

根目錄:StreamingAssets資料夾 #if UNITY_EDITORstring filepath = Application.dataPath +"/StreamingAssets"+"/my.xml"; #elif UNITY_IPHONE string fi

Unity3D路徑的資源讀取路徑

 Debug.Log("Application.streamingAssetsPath:"+Application.streamingAssetsPath); 這個路徑的是移動端的(只讀)路徑,只有放在這裡才可以被讀取到,需要在Assets下的目錄新建一個Streamin

unity中的檔案儲存路徑平臺(Android,iOS)的關係

主要是這個問題困擾我了一陣子,所以特寫寫。。。 unity中的的各種儲存方法的對應關係(直接上截圖吧) 重點說的是Application.presistentDataPath方法,因為這個問題在Android中困擾我很久, 先說說iOS端,很簡單,就是儲存到iOS的沙

MySQL官方教程及平臺的安裝教程和配置詳解入口

www 官方 apt源 nbsp chrom 版本選擇 rom gui apt 官方文檔入口: https://dev.mysql.com/doc/ 一般選擇MySQL服務器版本入口: https://dev.mysql.com/doc/refman/en/

Pthon3平臺的安裝

height clas python3.7 完成 ack ima round ges src python2.7在Windows平臺安裝: 1.下載python2.7 https://www.python.org/ftp/python/2.7.15/python-2.

Docker搭建平臺的啟動命令集錦

文章目錄 MySQL Nexus3.x docker檔案放置規劃 /usr/local/docker-compose/:存放各軟體的docker-compose.yml檔案,子目錄以各軟體名命名 /usr/local/:存放各軟體的掛

Unity平臺內建巨集定義

屬性 方法 UNITY_EDITOR #define directive for calling Unity Editor scripts from your game code. UNITY_EDITOR_WIN #

Unity3D移動平臺動態讀取外部檔案全解析

前言: 一直有個想法,就是把工作中遇到的坑通過自己的深挖,總結成一套相同問題的解決方案供各位同行拍磚探討。眼瞅著2015年第一個工作日就要來到了,小匹夫也休息的差不多了,尋思著也該寫點東西活動活動大腦和手指了。那麼今天開始,小匹夫會記錄一些平時工作中遇到的坑,以及小匹夫

QT平臺新增庫檔案方式

1.新增庫檔案靜態庫linux:LIBS += your_lib_path/your_lib動態庫linux:LIBS += -L your_lib_path -lyour_lib//經過測試了win32:LIBS += your_lib_path/your_lib例如:LI

7.0檔案路徑

package com.example.androiddirectory; import android.content.Context; import android.os.Environment; import android.util.Log; public c

cocos2dx 命令建立平臺工程,並自動打包Android apk的方法

轉自:http://www.cocos2d-x.org/projects/cocos2d-x/wiki/How_to_create_a_multi-platform_project_in_one_command_line How to create a multi-pla

USB轉串列埠驅動(支援平臺

CH340轉串列埠晶片支援的平臺驅動齊全,支援 Windows/Linux/Android/MacOS/WinCE 等各主流系統。下面就給出各平臺下驅動官網連結和簡要說明,每個平臺的安裝與使用問題可以參見我的其他博文。 Windows驅動 簡要說明:CH340/C

Unity平臺判斷總結

課堂老師講到的,記錄下來, 更多Unity的實用技巧請前往paws3d學習中心搜尋。連結https://www.paws3d.com/learn/,喜歡遊戲開發的小夥伴還可以加群935714213   unity 平臺判斷有兩種方法去判斷當前的平臺方式  

CH340驅動(含平臺

CH340轉串列埠晶片支援的平臺驅動齊全,支援 Windows/Linux/Android/MacOS/WinCE 等各主流系統。下面就給出各平臺下驅動官網連結和簡要說明,每個平臺的安裝與使用問題可以

MySQL 指定分割槽路徑

介紹 可以針對分割槽表的每個分割槽指定各自的儲存路徑,對於innodb儲存引擎的表只能指定資料路徑,因為資料和索引是儲存在一個檔案當中,對於MYISAM儲存引擎可以分別指定資料檔案和索引檔案,一般也只有RANGE、LIST分割槽、sub子分割槽才有可能需要單獨指定各個分割槽的路徑,HASH和KEY分割槽

Unity3d】資源路徑及資源載入

資源路徑 iOS: Application.dataPath            /var/containers/Bundle/Application/app sandbox/xxx.app/Data Application.streamingAsse