我的问题很简单,尽管到目前为止我还没有找到任何具体的答案。
我有一个经常更新的obj-c应用程序。我想创建一个具有相同bundle id的新swift应用,以替换较旧的应用作为更新。我喜欢旧应用程序中的8个核心数据模型版本,希望将其迁移到新的swift-from-scratch-app,这样我的用户就不会丢失他们的数据。可能吗?
感谢你
最佳答案
如果您使用的束ID完全相同(这是关键),那么从iOS的角度来看,它被视为完全相同的应用。考虑您的用户在其设备上安装了应用程序的1.x版本,并且使用新的Swift项目发布了2.x版本。您的用户(也不是iOS)将能够告诉您这是一个用Swift编写的全新应用。
这里的问题是,除非您使用完全相同的模型名称,否则将无法使用现有数据初始化CoreData,并且您将被迫为此编写自定义迁移。
我的建议是从旧项目中复制xcdatamodel文件,并更改复制到新项目中后生成的代码的语言。
然后在Swift中重新生成您的实体,然后继续工作,就像没有发生过一样。
关于ios - 从头开始更新应用时重用核心数据模型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41091944/