如何在我的快速框架中使用核心数据

时间:2019-01-11 07:57:37

标签: swift cocoa-touch core-data appdelegate

我必须创建一个可重用的框架,该框架内部使用脱机存储进行api请求,为此,我想使用核心数据,因为我知道使用需要appdelegate实例的核心数据。因此,我该如何开始将核心数据使用到我的框架中,这些核心数据与使用该框架的应用程序分开工作。

假设我创建了一个框架,该框架将在使用它的服务器上注册应用程序捆绑包ID。因此,为此,我必须使用api请求,并且重要的是要证明我的api如果请求失败需要将请求作为脱机数据存储在应用程序中,则我的api肯定会将请求刷新到服务器,以便我将其用于刷新每当发现网络可达性时,向服务器发出的请求。

请指导我如何开始进行操作。用于核心数据管理

我已使用以下步骤:

  1. 制作xcdatamodel
  2. 添加实体
  3. 并从编辑器中创建NSManageObject子类。

找到了给定图像中看到的错误

Entity that I have create

NSManageObjects Subclasses

Error in class

Error in extension class

我正在使用Swift 4.2开发XCode 9.4.1

3 个答案:

答案 0 :(得分:3)

您不需要appdelegate实例即可使用核心数据。框架内的Cor​​eData模型可以在目标/项目之间共享。

由于这是相当普遍的事情,并且有很多指南可用,这里的one逐步描述了方法。

答案 1 :(得分:1)

这些错误表明您已将代码生成器设置为自动生成类文件,并且还手动生成了它们。有关更多信息,请参见this question and its various answers

答案 2 :(得分:1)

无效的重新声明是由于重新创建了文件。

您无需从NSManagedObject创建实体子类

数据模型已经包含这些文件,并且仅构建一次。它应该可以正常工作。简而言之,无需创建实体类。您可以直接访问这些实体。

希望它可以帮助您...