gpt4 book ai didi

sqlite - 如何最好地将应用程序从 sqlite(使用 fmdb)迁移到 CoreData?

转载 作者:行者123 更新时间:2023-12-03 19:07:12 24 4
gpt4 key购买 nike

我使用 iOS 2.0 创建了我的应用程序,首先直接使用 C 库。然后我继续使用 FMDB(对我来说更容易)。但是今天,管理数据的故障、缓存和预取已经变得太麻烦了。我很确定使用 CoreData 会使应用程序响应更快、更轻(内存方面)。

我已准备好在 CD 中重做所有内容的漫长而艰苦的工作,但我需要迁移现有数据。我考虑过使用新对象(CDTrack、CDTrackPoint、CDSegment 等)创建一个新模型,然后将 Track、TrackPoint Segment 等对象中的现有数据移动到这个新存储中。但这真的是一个明智的想法吗?有没有比一张一张复制旧图更好的方法呢?

最佳答案

你基本上是在正确的轨道上。

如果需要迁移数据,我可能会做的是创建一个 NSOperation 用于在应用程序启动时运行的迁移。

根据您的应用程序,该操作可能能够在后台运行(注意核心数据线程规则!),使用通知与主线程 NSManagedObjectContext 通信。

如果您的应用在没有迁移这些数据的情况下没有任何意义,那么您可能会在数据迁移时设置一个带有进度指示器的模态视图,让用户更好地了解他们还需要等待多长时间。

根据我们讨论的数据量,您可能会惊讶于 Core Data 和 SQLite 可以多快地完成此类事情......关键是让用户了解情况,在尽可能短的时间内完成,并且如果您的应用程序设计支持它,请在后台执行。确保在主线程之外完成工作以保持 UI 响应。

玩得开心!

关于sqlite - 如何最好地将应用程序从 sqlite(使用 fmdb)迁移到 CoreData?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4726971/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com