考虑到AppGroups,使用CoreData创建新应用程序



Hy,

直到现在,我创建了使用CoreData的iOS应用程序;使用CoreData";XCode中的复选框,一切都很好。最近,我决定深入研究多个目标,并为我的CoreData数据库使用一个共享容器。我阅读了多个教程,解释了创建和使用AppGroups的过程。

虽然我完全理解如何将现有数据库迁移到共享容器中,但我无法从头开始创建新应用程序的过程——将CoreData与AppGroups结合使用。

  • 我总是必须先迁移我的CoreData模型吗
  • 有没有一种方法可以从一开始就在共享容器中创建CoreData模型
  • 这是自动发生的吗

我目前的理解如下:

  1. 创建一个新的XCode项目并选择";使用CoreData">
  2. 使用应用程序主要目标中的xcdatamodeld文件设计模型
  3. 修改AppDelegate以指向共享容器
  4. 修改AppDelegate以在第一次应用程序启动时执行数据库迁移

为4。一旦我执行了3。在应用程序首次发布之前?我知道4。如果我决定在没有AppGroup的情况下发布1.0版本的应用程序,并使用AppGroups(以及共享容器(发布后续版本,则这是必要的。

会那么容易吗?我是不是错过了什么?

谢谢!

您并不总是需要迁移数据来使用应用程序组。这是一种常见的需求,因为许多应用程序在发布后需要切换到使用应用程序组,这使得迁移成为必要。但这只是因为该应用程序已经有不在应用程序组中的数据。他们需要移动现有数据。

如果该应用程序从未启动过,您可以执行步骤1-3,然后完成。持久存储将从一开始就进入应用程序组。它不需要迁移到应用程序组中,因为它已经在那里了。即使执行了步骤4,也不会有任何效果。

正如您所注意到的,Xcode的项目模板不包括应用程序组,但您似乎知道如何解决这个问题。

相关内容

最新更新