草庐IT

CKRecordID

全部标签

ios - 无法删除 CloudKit 中的记录

我正在为我的iOS应用程序使用CloudKit。我创建了一种通过ID删除记录的方法。我的问题是CKRecord在我重新安装应用程序后没有被删除:当我重新安装应用程序并尝试删除CloudKit记录时,该方法执行成功(错误为零)但是记录仍在CloudKit中。PS:只要我删除由同一应用程序实例创建的记录,删除就可以正常进行。classfuncremoveFavoriteEntryFromCloud(favoriteIDid:String){//CreatetherecordletfavoriteID=CKRecordID(recordName:id)privateDatabase.dele

ios - 如果在客户端生成 CKRecordID.recordName 有什么缺点吗?

如果在客户端生成recordName,可以提供更流畅的用户体验。varuuid=NSUUID().UUIDString你知道这样做有什么坏处吗? 最佳答案 recordName始终在客户端生成。如果您的应用程序未提供recordName,CloudKit框架将在将其发送到服务器之前在客户端生成一个UUID。与让CloudKit框架为您生成UUID相比,在您自己的代码中生成UUID并没有加速。客户端创建的recordName可以帮助您的应用程序将CloudKit记录映射到您自己的本地数据存储。如果您不需要这样做,那么您可以将其留给Cl

ios - 如何查询 CloudKit 中的 recordID IN [CKRecordID]

我的谓词想要排除一些已经下载并在[CKRecordID]中可用的记录。现在我可以查询1CKRecordID[0],但不能查询[CKRecordID]数组。如何查询数组?letexcludeIDs:[CKRecordID]这个有效:letpred1=NSPredicate(format:"NOT(recordID=%@)",excludeIDs[0])但这不是:letpred1=NSPredicate(format:"NOT(recordIDIN%@)",excludeIDs)错误:loadImageCompareRecordIDsAndEndDateThatHaveNotEnded错误