在我的应用程序中,对于保存在设备上的每一个游戏,我都会将游戏对象存储在NSDictionary中,以及其他一些用NSKeyedArchiver存档的元数据。
我试图避免在每次我想在游戏数据达到峰值时分配/输入游戏对象,因为游戏对象可能会变得相当大。因此,我使用元数据来获取有关它的基本信息,以便构建菜单等。
我有两个问题。当NSDictionary未存档时,是否分配了它的每个对象?如果是这样的话,是否将游戏对象存档为NSData,然后再将其存档到NSDictionary中是否更有效?基本上是档案馆里的档案。
发布于 2013-09-16 19:14:02
是的,整本字典都是同时存档的。您可能需要创建一些包装器和/或将每个游戏状态保存为2个文件(一个用于元数据,另一个用于完整状态),可能每个游戏都在自己的文件夹中。
将存档的数据放入字典,然后归档字典并不能解决最初的问题,而且需要更长的时间。解决方案是将数据的两个部分分开,以便将它们分开存档。
https://stackoverflow.com/questions/18835494
复制相似问题