簡體   English   中英

Unity-文件無法在Android上寫入?

[英]Unity - File not writing on Android?

在過去的幾個小時里,我一直在努力讓它工作,這讓我發瘋。

我設置了一種保存數據的方法,該方法在PC上可以完美運行,但是在Android上,它不會寫入文件。 這是我的代碼:

 public void Save()
{
    string data = buildJson();

    File.WriteAllText(Application.persistentDataPath + "/playerSave.json", data);
    Debug.Log("File Saved: " + Application.persistentDataPath + "/playerSave.json");
}

不知道為什么它不起作用。 據我所知閱讀其他線程,使用Application.persistantDataPath是正確的做法。

有什么幫助嗎?

在android上,File.WriteAllText(Application.persistentDataPath +“ /playerSave.json”,data)將在您的SD卡上寫入數據,您需要在清單文件中添加android.permission.WRITE_EXTERNAL_STORAGE權限。 由unity創建的默認清單文件不會添加此權限。

如果WriteAllText失敗,則將引發異常。 為什么不嘗試捕獲異常並檢查錯誤是什么?

解決了。

我的問題是該方法甚至沒有被正確調用。

我已經創建了一個單例游戲對象,其中包含保存有我的save方法的腳本,但是我沒有使用引用來保存它,這意味着它僅在我在創建游戲對象的同一場景中調用save方法時才有效。 (在我在Unity編輯器中跳過菜單場景的情況是這種情況,但在應用程序中對其進行真實測試時不是這種情況)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM