【问题标题】:More efficient iCloud sync?更高效的 iCloud 同步?
【发布时间】:2012-07-22 21:27:06
【问题描述】:

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

  1. 在不保存到 iCloud 的情况下保存,所以我可以选择在大多数情况下这样做?
  2. 在后台上下文中保存到 iCloud?我可以将 save 方法放在后台线程中,以执行此操作。这行得通吗?

【问题讨论】:

    标签: ios icloud magicalrecord


    【解决方案1】:

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

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

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

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-04-30
      • 2016-01-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-05-16
      • 2014-12-13
      相关资源
      最近更新 更多