ios - 从头开始更新应用时重用核心数据模型

标签 ios core-data migrate

我的问题很简单,尽管到目前为止我还没有找到任何具体的答案。

我有一个经常更新的obj-c应用程序。我想创建一个具有相同bundle id的新swift应用,以替换较旧的应用作为更新。我喜欢旧应用程序中的8个核心数据模型版本,希望将其迁移到新的swift-from-scratch-app,这样我的用户就不会丢失他们的数据。可能吗?

感谢你

最佳答案

如果您使用的束ID完全相同(这是关键),那么从iOS的角度来看,它被视为完全相同的应用。考虑您的用户在其设备上安装了应用程序的1.x版本,并且使用新的Swift项目发布了2.x版本。您的用户(也不是iOS)将能够告诉您这是一个用Swift编写的全新应用。

这里的问题是,除非您使用完全相同的模型名称,否则将无法使用现有数据初始化CoreData,并且您将被迫为此编写自定义迁移。

我的建议是从旧项目中复制xcdatamodel文件,并更改复制到新项目中后生成的代码的语言。

enter image description here

然后在Swift中重新生成您的实体,然后继续工作,就像没有发生过一样。

关于ios - 从头开始更新应用时重用核心数据模型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41091944/

相关文章:

objective-c - 如果显示 UIAlertView,iOS 上是否有通知?

ios - 未检测到滑动(Swift/iOS9)

ios - 安全区域问题 - 在 iPhone X 上正常,但在其他人上不行

iphone - 警告将方法添加到核心数据的应用程序委托(delegate)中

ios - Coredata fetchrequest 谓词未显示正确的内容

objective-c - 如何在 Swift 中调用也有多个参数的 Objective C 方法

ios - 捕获 UIView 的图像(renderInContext 无法正常工作)

objective-c - 具有(复杂)关系和核心数据/RAILS 的 Restkit

rake - rake 迁移期间关系已存在

python - 错误 models.py Django