【发布时间】:2015-05-11 23:15:59
【问题描述】:
在创建 Unity3D 应用程序的新版本时,我在从商店安装的基础上测试了侧载新版本。侧载应用不再能够找到从商店版本保存的文件。
问题似乎在于两个应用版本之间的 Application.persistentDataPath 不同。
在 BuildSettings 下:
Install Location: Prefer External
Write Access: Internal Only
AndroidManifest.xml 似乎没有关于安装位置/写入访问位置的信息。
我不介意将安装位置更改为强制内部,如果这有助于此次更新和/或将来。但我不确定该设置的作用。
我正在使用 C# 的 XMLSerializer 保存 XML 文件,然后使用 Application.persistentDataPath 将它们写入 FileStream。
XmlSerializer serializer = new XmlSerializer(typeof([CLASS]));
FileStream stream = new FileStream( Application.persistentDataPath + "/[FILENAME].xml", FileMode.Create);
serializer.Serialize( stream, [OBJECT]);
stream.Close();
【问题讨论】:
-
您使用什么代码来保存数据? PlayerPrefs 通常对我很有效。
-
已修改问题以包含更多详细信息。谢谢你的提问,我忘了我必须不早点使用 PlayerPrefs。