Z S*_*Z S 5 ios cloudkit ckoperation ios10 ckrecordzone
在我的 CloudKit 应用程序中,我在存储所有 CKRecord 的私有数据库中创建一个区域。CKRecords 可以有 10 种不同的记录类型,其中一些可以附加 CKAssets。我用来CKFetchRecordZoneChangesOperation查找该区域中的记录更改,并下载它们。我想优化,CKFetchRecordZoneChangesOperation以便只包含desiredKeys在下载中,所以当时我不下载 CKAsset,但似乎没有任何方法可以指定每个记录类型。相反,您似乎只能指定desiredKeyson CKFetchRecordZoneChangesOptions,它是在 zoneID 上设置的。
CKFetchRecordZoneChangesOperation那么,考虑到该区域中有不同类型的记录类型,如何在获取时指定“desiredKeys” ?我在这里缺少一些简单的东西吗?我猜想另一个(彻底的)选项是为每种记录类型创建一个记录区域,但如果有可能的话,我不想走这条路。
谢谢。
唯一的选择是为每种记录类型添加字段名称前缀。这使得可以为每个记录类型指定所需的键。
https://developer.apple.com/reference/cloudkit/ckfetchrecordzonechangesoptions/1640472-desiredkeys指出:
vardesiredKeys:[字符串]?
...
由于您获取的记录可以属于不同类型,因此数组应包含所请求记录的所有字段名称的合并集,并至少包含每种记录类型的一个字段名称。
...
你的观察是正确的。您也无法获取特定于记录类型的区域更改。
| 归档时间: |
|
| 查看次数: |
474 次 |
| 最近记录: |