我正在使用Unity构建iOS游戏,并在文档中进行优化,它说:
Don’t use anything that lives in System.dll or System.Xml.dll in your code. These libraries are not compatible with micro mscorlib.
在我的代码中,为了保存游戏数据,我有一个类似的类:
[Serializable]
class GeneralGameData {
public bool muteMusic;
public bool muteSoundFX;
public bool muteVibration;
public int highestScoreAchieved;
}
需要:
Using System;
当我运行游戏时,mscorlib似乎可以使用它,但是会遇到一个令人讨厌的崩溃,一次又一次地杀死团结的崩溃以及随机点的游戏。我怀疑它可能与此有关。
有人能指出我如何用micro mscorlib保存序列化数据吗?
干杯。
答案 0 :(得分:0)
您可以查看Mono compatibility reference,了解micro mscorlib中哪些元素不可用。
您会注意到SerializableAttribute(名称空间系统,程序集mscorlib)在.NET 2.0,2.0子集,Web播放器和Micro中可用。在这里使用[Serializable]不应该是错误的。但是,您的实际序列化代码可能间接依赖于微型mscorelib中不可用的内容。您始终可以使用.NET Reflector检查序列化程序代码以进行验证。
您可以查看here有关如何保存游戏数据的一些想法(以及您在序列化过程中可能遇到的一些问题)。