jjzjj

CKServerChangeToken

全部标签

ios - 通过生成已知过期的 CKServerChangeToken 来测试 CKErrorChangeTokenExpired 处理

CKFetchDatabaseChangesOperationfetchDatabaseChangesCompletionBlock的标题注释指出:“如果服务器返回一个CKErrorChangeTokenExpired错误,则previousServerChangeToken值太旧,客户端应该丢弃其本地缓存并从nilpreviousServerChangeToken开始重新获取此记录区域中的更改。”我想测试这个场景,因此我想生成一个过期的CKServerChangeToken,这样我就可以将它设置为CKFetchDatabaseChangesOperation上的previousSer

ios - CloudKit:CKFetchRecordChangesOperation、CKServerChangeToken 和 Delta 下载

我的问题与WWDC2014AdvancedCloudKit中命名的“DeltaDownload”有关。我正在尝试为我的CoreData应用程序进行同步,该应用程序目前仅适用于iPhone(想想:只有一台设备处于事件状态)。因此,基本上,对于目前的大多数情况,该应用程序将从同一台设备将用户记录存储在云中。我无法理解基于CKFetchRecordChangesOperation又名Delta下载的自定义区域功能。正如我所说的那样,我们有CKServerChangeToken来维护同步操作(我的意思是只下载那些被另一台设备添加/修改/删除的记录),正如WWDC上所展示的那样。但是,我无法理解

ios - 将 CKServerChangeToken 保存到核心数据

我使用CloudKit和CoreData以及Swift来同步我的数据。因此,我创建了订阅,并在收到通知后从云端获取新数据以更新我的核心数据。这是处理此更新的推荐方法。为了获取数据更改,我可以插入一个CKServerChangeToken来获取新内容。我的问题是如何将token保存到核心数据以供以后获取请求?对于CKRecords,有一种方法可以仅保存元数据,但对于CKServerChangeToken则没有这样的方法。有人有想法吗?最好的问候,Jannik 最佳答案 CKServerChangeToken是一个不透明的数据对象,它继