更高效的iCloud同步?

时间:2012-07-22 21:27:06

标签: ios icloud magicalrecord

我正在使用MagicalRecord。每当我保存,它都会保存到iCloud,这需要几秒钟。我有办法:

  1. 保存而不保存到iCloud,所以我可以选择大部分时间都这样做吗?
  2. 在后台环境中保存到iCloud?我可以将save方法放在后台线程中,以执行此操作。那会有用吗?

1 个答案:

答案 0 :(得分:0)

使用Core Data保存到iCloud是一种全部或全部的交易。您可以在应用的核心数据堆栈中拥有多个商店。但是,这意味着可以使用此方法将数据从一个商店(可能是iCloud商店)移动到另一个(本地)商店:

[NSManagedObjectContext assignObject:<obj> toPersistentStore:<store>]

这意味着,您首先要在上下文中创建对象,然后告诉它将自己保存在本地存储中。然后,当您阅读将其移至云端时,您可以使用此方法,并再次保存,这次是iCloud。

将数据保存到iCloud Core Data商店的规则应与本地商店相同。除了将您的Core Data存储移动到无处不在的容器之外,iCloud没有不同的API,这是由魔法记录处理的。这意味着,使用后台上下文(私有队列上下文)保存。