Единство и Oculus Go. Чтение / запись на внутреннем хранилище

Я создаю приложение Oculus Go с Unity. Я пытаюсь создать текстовый файл во внутреннем хранилище GO. (Тот, который вы видите, когда подключаете HMD к вашему ПК).

Я пробовал эти разные пути, ни один из них, кажется, не работает:

  • Application.persistentDataPath
  • / Шоссе / SDCard / MyFolder
  • // хранение / эмулировать /0/Android/ данные / MyFolder.

Если кто-то знает правильный, это было бы здорово Спасибо!

3 ответа

Это функция записи:

File.WriteAllText(Path.Combine(_directoryPath, fileName), _text, System.Text.Encoding.ASCII);

Это функция чтения:

#if PLATFORM_ANDROID && !UNITY_EDITOR
        TextAsset textAsset = new TextAsset(System.IO.File.ReadAllText(filePathAndName));
#elif UNITY_EDITOR
        TextAsset textAsset = AssetDatabase.LoadAssetAtPath<TextAsset>(filePathAndName);
#endif

Это путь для использования:

#if PLATFORM_ANDROID && !UNITY_EDITOR
        SavedTextsCompleteFilePath = Application.persistentDataPath;

        // just for debugging and playing in the editor
#elif UNITY_EDITOR
        SavedTextsCompleteFilePath = "Assets/Resources";
#endif
        // set the base file path, then add the directory if it's not there yet
        SavedTextsCompleteFilePath = MakeFolder(SavedTextsCompleteFilePath, "MyGameSaveFolder");
    }

и вспомогательная функция:

private string MakeFolder(string path, string savedTextsFolder)
{
    string saveDirectory = path + savedTextsFolder;
    if (Directory.Exists(saveDirectory) == false)
    {
        Directory.CreateDirectory(saveDirectory);
        Debug.Log("directory created! at: " + path);
    }
    return saveDirectory;
}

Попробуйте использовать Application.streamingAssetsPath,

На Oculus вы можете читать и писать в Application.persistentDataPath. И вы можете читать только из Application.streamingAssetsPath.

Я не уверен, что не удалось. Но я могу использовать постоянный DataPath.

Обязательно поставьте знак «/» между каталогом и именем файла.

строка FileName = Application.persistentDataPath + «/» + «file.txt»;

Другие вопросы по тегам