将 [Serializable] 与 mscorlib (Unity) 一起使用
本文关键字:Unity 一起 mscorlib Serializable | 更新日期: 2023-09-27 18:35:46
我正在使用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保存序列化数据的正确方向?
干杯。
你可以看看 Mono 兼容性参考,看看哪些元素在 micro mscorlib 中不可用。
您会注意到 SerializableAttribute(命名空间系统、程序集 mscorlib)在 .NET 2.0、2.0 子集、Web 播放器和 Micro 中可用。在这里,[可序列化]的使用不应该有错。但是,您的实际序列化代码可能间接依赖于micro mscorelib中不可用的内容。始终可以使用 .NET 反射器检查要验证的序列化程序代码。
您可以在此处查看有关如何保存游戏数据的一些想法(以及您在序列化方面可能遇到的一些问题)。