【问题标题】:Delay in CoreData to PersistentCoudKitContainer synchronization核心数据延迟到 Persistent CoudKit 容器同步
【发布时间】:2021-02-16 05:10:56
【问题描述】:

我的 CoreData 与 NSPersistentCloudKitContainer 同步时遇到问题。

同步有效,但是当我重新安装应用程序时,在应用程序启动和同步结束之间会有几秒钟的令人讨厌的延迟。我需要在启动时决定是创建新数据实体还是使用来自 iCloud 的“旧”数据。

如果有办法,我可以忍受延迟并等待同步完成

a) 在启动时确定 iCloud 中有要同步的数据并

b) 在同步最终完成时收到通知

有人知道实现这一目标的解决方案吗?环境 NSPersistentStoreRemoteChangeNotificationPostOptionKey 没有多大帮助,因为它在同步期间被触发了多次,并且不提供任何状态信息。

【问题讨论】:

    标签: ios xcode core-data icloud nspersistentcloudkitcontainer


    【解决方案1】:

    冒着为您提供最无益的答案的风险,我认为这是不可能的,即使是,我认为您正在与NSPersistentCloudKitContainer 的哲学作斗争。

    使用NSPersistentCloudKitContainer,您应该假设同步以不规则、不稳定的间隔发生或根本不发生。它应该在后台无缝运行,您无需担心。您不应该尝试在代码中推测它何时发生或是否发生。

    这非常类似于在 iPhone 上拍照,然后该照片需要几秒钟才能出现在 iMac 上。 iCloud 同步决定是否以及何时进行同步。

    我知道这没有帮助,但我认为您应该注意这个观点。

    【讨论】:

    • 好的,我担心这就是答案,谢谢
    猜你喜欢
    • 1970-01-01
    • 2010-10-18
    • 1970-01-01
    • 1970-01-01
    • 2016-07-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多