从 Obj C 用 Swift 重写应用程序时使用 Core Data

Posted

技术标签:

【中文标题】从 Obj C 用 Swift 重写应用程序时使用 Core Data【英文标题】:Use Core Data when rewriting an App in Swift from Obj C 【发布时间】:2015-07-30 11:48:50 【问题描述】:

我目前在 App Store 上有一个我用 Objective C 编写的应用程序版本。它使用 Core Data 存储数据。我一直在努力改进,并决定使用 Swift 编写应用程序的下一次迭代。

完全改变了应用程序的感觉并使用 Swift 完成了艰苦的工作,是否可以在用户更新应用程序时使用已经到位的 Core Data?还是他们必须重新开始并丢失他们已经拥有的数据?更新后的 App 是否会被视为新 App?

我可以将 Swift 代码“放入原始的 Obj C 项目”,然后删除 Obj C 代码并希望它能正常工作吗?两个版本之间是否存在迁移?版本之间的核心数据基本相同。

提前感谢您提供的任何帮助。

【问题讨论】:

【参考方案1】:

Core Data 使用 SQLite、二进制或 XML(仅限 OSX)文件来保存数据,因此您的应用使用何种语言编写并不重要。

【讨论】:

为了补充这个答案,Core Data 在 Swift 和 Objective-C 中都可以工作。您可以使用任何一种语言(或同时使用两种语言)。 我认为我的问题写得不好。不过感谢您的回复。

以上是关于从 Obj C 用 Swift 重写应用程序时使用 Core Data的主要内容,如果未能解决你的问题,请参考以下文章

可以在 Obj C 中链接,找不到符号,也不会在 Swift 中链接

使用 Objective C 创建并从 Swift 获取的核心数据

在 obj C 项目上调用的 iOS Swift 方法

Compiler error: 写Swift报出 Obj-C 选择器不允许重载

尽管桥接头工作正常,但无法在 Swift 中实例化 Obj C 类

如何从目标 c 中的 pod 文件访问我的 swift 项目文件?