ios - CKFetchNotificationChangesOperation 的 previousServerChangeToken 是用户特定的还是数据库特定的?

标签 ios cloudkit cknotification

对于公共(public) CloudKit 数据库,有谁知道在初始化 CKFetchNotificationChangesOperation 时用于 previousServerChangeToken 的数据 token 是否是:

1) 用户特定:数据 token 只能由一个 Apple ID 使用

2) Database specific:同一个token可以被不同的Apple ID用来指定CKNotifications数据库中的同一个状态

我想知道因为我有一些预加载的本地数据可能需要在第一次启动时更新,而且我不确定我是否应该使用 CKFetchNotificationChangesOperation(在主包中保存一个初始 token )或只获取所有公共(public)数据库中的记录并与本地数据进行核对。

最佳答案

通知更改 token 是每个用户的值,它们不能用于假设有关公共(public)数据库中记录状态的任何信息。

听起来您正在尝试使用公共(public)数据库来存储更新应用程序包中默认文件的文件。

实现此目的的一种方法是在您的所有此类记录上存储一个 version 属性。当应用程序检查是否需要任何更新时,它可以为版本高于本地保存的所有记录运行 CKQuery。然后,您的应用可以下载所有这些记录并使用它们,而不是存储在其包中的数据。

关于ios - CKFetchNotificationChangesOperation 的 previousServerChangeToken 是用户特定的还是数据库特定的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34302452/

相关文章:

ios - 如何远程加载数据到Cloudkit

swift - 如何在 Swift 中从 CloudKit 中删除 Assets ?

iphone - Cloudkit:CKNotificationInfo 徽章值永远不会减少

ios - 如何将 CKQueryNotification 连接到 CKRecord 或 CKSubsription?

iphone - 有没有人有核心数据中获取属性的工作示例?

ios - 在 Swift 中的原型(prototype)单元之前实现独特的 UITableView 单元

ios - 如何使用 WKWebview 检查 phonegap 应用程序

ios - 使用游标加载 UICollectionView

ios - Swift 3.0 TableView 单元格按钮