2017-03-24 27 views
0

我正在開發Android應用程序,Unity中只有一個模塊。我從服務器下載所有數據並將其保存在路徑中,方法返回如下。如何訪問unity3d中的android/data/data/path的路徑

getFilesDir()的getPath()

現在在團結,我想從目錄中的JSON文件,團結加載圖像。但是我無法獲得/ data/data/PACKAGE_NAME的統一。而不是我得到/Storage/Emulated/0/Android/data.I使用Application.persistentdata來獲取Android路徑。如何在Android中獲取/數據/數據路徑。請幫我解決這個問題。我正在嘗試這一個多星期。

回答

0

我目前正在研究一些完全像這樣的事情,對我來說,它工作正常。步驟如下:

  1. 獲取圖像路徑。 Application.persistentdata正是你所需要的。
  2. 事先知道您想要使用擴展名訪問的文件/圖像的名稱(例如 - fish.png/manifest.json)。
  3. 在通過WWW調用訪問文件/圖像名稱之前,將文件/圖像名稱添加到圖像路徑。

這些步驟將適合您的需要。如果您在上述任何步驟中遇到任何問題,請告知我們。

+0

我從服務器下載圖像並將其保存在數據/ data/Package_name /文件,但從統一我得到路徑作爲存儲/模擬/ 0/Android /數據。所以我得到的文件不存在的路徑。因爲統一點不同的路徑 –

+0

@ParvathiM如果您知道數據路徑,則使用相同的路徑代替Application.persistentdata路徑。其實,我並不完全明白你的問題。 – Navi

0

如果您知道應該閱讀的確切路徑,爲什麼不用普通方法讀取文件?

using System; 

StreamReader sr = new StreamReader("data/data/.../a.txt"); 
string content = sr.ReadToEnd(); 
sr.Close(); 

不過,如果你只在Java端知道該文件的路徑,那麼你可以使用UnitySendMessage,或AndroidJavaObject等Java和C#代碼之間comminicate ..

+0

嗨,即使我們硬編碼的路徑,並把所有的文件植根移動,但我仍然得到錯誤找不到路徑。 –

+0

如何從服務器下載文件。它在你遊戲的Java方面嗎?如果是這樣,只需將用於Java代碼的路徑發佈到C#端即可。如果java可以訪問下載並保存任何文件的路徑,則C#也必須能夠訪問此路徑來讀取文件。 – align