我有一个关于iCloud存储与iOS7中的核心数据存储的问题。在苹果WWDC会议上,提到可以在沙箱中创建核心数据存储,并且当应用开始从icloud接收响应时,核心数据存储中的更改将合并到icloud存储中。
现在,(我可能是错的),但是会议进一步提到,一旦应用程序切换到icloud存储,本地核心数据存储将被删除。因此,我的问题是本地核心数据存储区能否与iOS7中的icloud存储区共存(以便用户能够脱机处理数据)?并为此提供示例代码吗?
最佳答案
在iOS 7中,Core Data框架负责管理本地存储,直到iCloud存储建立并可用为止。此模式也适用于应用程序处于离线状态,并且在应用程序处于离线状态时不会删除任何数据(只是在开发中对我的应用程序进行了仔细检查)。
在其他情况下,iCloud存储将被删除。如果iCloud用户帐户发生更改,则相应的iCloud存储文件将被删除。在这种情况下,有一个新的API NSPersistentStoreCoordinatorStoresWillChangeNotification
,允许您在存储不可用之前存储未保存的数据。如果用户以后使用同一帐户登录,则数据将从iCloud恢复(有关更多信息,请查看15点处的WWDC 2013会话207视频)。
至于示例代码,到目前为止还没有。但是,在开发人员论坛上有iCloud sample code shared by AppleSpaceMan,这是我用作基础并且运行良好的方法。
关于ios - 使用icloud的本地核心数据存储,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/19143877/