我有一个现有的iOS应用程序,它使用应用程序数据和用户数据的核心数据。我的问题是更新应用程序数据是一场噩梦(我的第一个应用程序,所以我没有理想情况下第一次这样做)。我想将应用程序数据和用户数据拆分为2个单独的sqlite dbs(或商店,如果我的术语错误,请更正我)。
任何提示都将不胜感激。
答案 0 :(得分:1)
有两个sqlite文件是个好主意。痛苦现在正在分裂。
在您的应用包中创建仅的新商店。确保数据与首次发布应用程序时相同。
您将需要走“用户”商店并查找与“参考”商店中存在的所有数据相同的所有数据并将其删除。如果用户更改了该数据,那么我会离开它并让用户整理出重复数据。
一旦完成,您的应用可以恢复正常功能并加载两个商店。我会在某个地方设置一个标志,以便您知道这已经完成,并且您不会在每次启动时都运行检查。 “用户”商店的元数据是一个好地方。
注意,这需要在用户“使用”您的应用之前完成。这可能意味着更改您的启动例程,以便在需要迁移和过滤器时告诉用户发生了什么。
答案 1 :(得分:0)
我不认为拥有多个持久存储是正确的解决方案。您可以在单个持久性存储中拥有单独的实体。核心数据将正确处理它。