相关疑难解决方法(0)

在搜索模型文件的路径时,为什么扩展名为"momd"而不是"xcdatamodel"

我使用Core Data创建了一个Master-Detail应用程序.并且有一个简单的代码来获取Model文件的路径:

NSURL *modelURL = [[NSBundle mainBundle] URLForResource:@"Model" withExtension:@"momd"];
Run Code Online (Sandbox Code Playgroud)

我不知道为什么扩展名不是"xcdatamodel"而是"momd".

有人知道答案吗?

core-data ios

45
推荐指数
1
解决办法
1万
查看次数

是否可以在一个 iOS 应用程序上拥有多个核心数据“数据库”?

我想编写一个大量利用核心数据的“管理”游戏。游戏需要预先设置、预定义的数据集,用户/系统无法更改;它用于为游戏提供数据种子,并且是只读的。

我能给出的最好的例子是足球管理游戏,但它可以是任何东西。在一些足球管理模拟游戏中,他们为您提供场景和预设数据集。

当用户继续游戏时,他们可以保存/加载保存到核心数据的进度。

除此之外,用户还可以接收预定义数据的更新或购买场景数据包;保存到他们的设备上。

因此,可能有多个“核心数据数据库”(是的,我知道核心数据严格来说并不是一个数据库)或应用程序可以深入使用的“存储桶”。

数据的架构不会改变。

所以我们有:

  1. 仅用于播种游戏的预定义数据(默认数据)。
  2. 用户当前保存的游戏。
  3. 用户已从互联网下载了一个场景。
  4. 问题:当用户在“场景”中保存游戏时会发生什么。
  5. 问题:如何跟踪核心数据中的所有场景和所有用户保存的游戏?

这听起来像是在给定时间有多个数据库。显然,应该限制用户可以保存游戏的数量。

另一种解决方案是用户的设备以 JSON 或 XML 格式导出数据的备份副本,并将其用作“保存数据”,我也可以在场景中使用此策略。显然,需要某种加密来防止人们通过 XML 简单地更改游戏中的统计数据。

但我从一开始就想知道使用 iOS 设备的核心数据处理多个核心数据“数据库”的最佳方式是什么?

谢谢你的时间

core-data multiple-databases nsmanagedobject nsentitydescription

3
推荐指数
1
解决办法
6197
查看次数