我需要在Unity插件項目中本機(通過C++或Java代碼)訪問Android和iPhone上的文件。 Unity是否提供任何方法來訪問項目資產中的文件?如何在Android或iPhone上本機訪問Unity資源?
2
A
回答
6
- 我的解決方法是將文件從Application.streamingAssetsPath(這是一個罐子內,不能老是被大多數本地庫訪問)的Application.persistentDataPath(這是完全正常)複製,然後通過到本機代碼的路徑。
- 該項目的源文件都應該在資產\ StreamingAssets
在C#小樣本代碼複製文件異步: 添加這種方法它繼承MonoBehaviour
IEnumerator CopyFileAsyncOnAndroid()
{
string fromPath = Application.streamingAssetsPath +"/";
//In Android = "jar:file://" + Application.dataPath + "!/assets/"
string toPath = Application.persistentDataPath +"/";
string[] filesNamesToCopy = new string[] { "a.txt" ,"b.txt"};
foreach (string fileName in filesNamesToCopy)
{
Debug.Log("copying from "+ fromPath + fileName +" to "+ toPath);
WWW www1 = new WWW(fromPath +fileName);
yield return www1;
Debug.Log("yield done");
File.WriteAllBytes(toPath+ fileName, www1.bytes);
Debug.Log("file copy done");
}
//ADD YOUR CALL TO NATIVE CODE HERE
//Note: 4 small files can take a second to finish copy. so do it once and
//set a persistent flag to know you don`t need to call it again
}
0
在運行時訪問文件僅限於目錄資產/資源。放置在那裏的所有東西都可以通過Resources.Load
方法訪問(doc),但是沒有機會從文件夾外部獲取某些內容。
在資產/資源文件夾中,您可以設置任意文件夾結構。我在一個iPhone項目中使用它來從預定義的文本文件構建級別,並且它像一個魅力一樣工作。
相關問題
- 1. Angular:如何訪問資源?
- 2. Qt如何訪問資源
- 3. Android:訪問資源時沒有活動或上下文refeerence
- 4. 如何使用HTML5訪問iPhone或Android相機?
- 5. 如何訪問AlertDialog中的文本android的字符串資源
- 6. 如何從Android資源訪問本地xml文件?
- 7. Android 4.3上的Trigger.io本地資源訪問
- 8. 如何從Android本機代碼(NDK r5)訪問打包資產
- 9. 如何從主機訪問訪客資源?
- 10. 訪問資源
- 11. 如何訪問Android資源,例如在libgdx中的尺寸?
- 12. 如何訪問ASP.NET本地主機網站上的Android手機
- 13. iPhone上的資源
- 14. 如何在Android設備上訪問Unity中的SDCard路徑?
- 15. 如何在Android模擬器上訪問本地主機?
- 16. 如何從android訪問本地主機?
- 17. Nativescript在android和ios上訪問本地主機訪問
- 18. 如何本地化與iphone的資源
- 19. Android:訪問Android中的本地資源列表
- 20. 在JAR中訪問資源
- 21. 訪問JAR資源
- 22. 訪問JAR資源
- 23. 如何在同一資源上同步兩個進程訪問?
- 24. 無法訪問android/drawable圖標資源
- 25. Android - 動態訪問xml資源
- 26. Android應用程序訪問庫資源
- 27. 訪問Android中的資源文件
- 28. 訪問服務中的資源(Android)
- 29. 訪問Android中的資源文件
- 30. Cordova plugin Android活動 - 訪問資源
現在是2016年...有沒有更容易的解決方案來訪問StreamingAssets中的文件在Android插件? – Piotr