多个 iOS 库,每个库都有自己的核心数据存储
Posted
技术标签:
【中文标题】多个 iOS 库,每个库都有自己的核心数据存储【英文标题】:Multiple iOS libraries each with their own Core Data storage 【发布时间】:2014-01-17 15:21:23 【问题描述】:我目前正在使用 Magical Record 来处理静态 ios 库中的核心数据存储。我现在正在开发一个需要 Core Data 的新库,并且想再次为此使用 Magical Record,这两个库很可能会在同一个应用程序中使用。两个库的数据模型是不同的(它们负责持久化不同的东西),并且库之间不需要任何关于 Core Data 的交互。
所以我的目标是两个具有不同数据的静态库,以便在同一个应用程序中使用时都处理自己的核心数据存储。
我的问题是如何使用 Magical Record 实现这一目标?
显然,作为单独的库,一切都很好,但是当它们在同一个应用程序中使用时会发生什么。
我应该指出我对 iOS 开发比较陌生,所以我对 Core Data 和 Magical Panda 的了解很少。
【问题讨论】:
【参考方案1】:实际上,MagicalRecord 的当前发行版本在这种特定情况下相当困难。这就是我一直致力于 MagicalRecord 3.0 的原因。查看 github repo 上的 release/3.0 分支。 MagicalRecord 3.0 处于测试状态,但之前版本的所有功能都可以正常工作。 MagicalRecord 3.0 引入了堆栈的概念,您将使用它来实现此场景。我还从核心数据堆栈中删除了所有默认对象类别,而是在 MagicalRecord 本身内管理一个默认堆栈。这意味着如果你想将一个应用程序从 2.x 升级到 3.0,你需要通过并修复一堆引用。但是,由于您正在开发一个新项目,我建议您尝试一下。我计划很快花一些时间让 MagicalRecord 成为一个可发布的库。
【讨论】:
您有使用堆栈概念的示例吗?你能解释一下它以及它与多库问题的关系吗? @casademora 对一个例子也很感兴趣 一个示例最终将发布到 repo。由于我目前正在做很多事情,所以进展缓慢。以上是关于多个 iOS 库,每个库都有自己的核心数据存储的主要内容,如果未能解决你的问题,请参考以下文章
为多个 Git (GitHub) 存储库重用一个 Jenkins 作业
Java千百问_08JDK详解(004)_jdk基础扩展类库都有什么