我只有CKShare
条记录。只有这个,我需要知道其他根CKRecord
与它有什么关系。
由于总是需要root记录,我现在需要知道它。但是在初始化程序中看不到其他地方的财产。
public convenience init(rootRecord: CKRecord)
有什么想法吗?
答案 0 :(得分:0)
您应该使用CloudKit
操作:CKFetchShareMetadataOperation
。此操作使用CKShare().urls
数组初始化,并返回相应的CKShareMetadata?
数组。 CKShareMetadata
类包含rootRecordID: CKRecordID
和其他有趣的属性,例如关联的share
和participantType: CKShareParticipantType
。 participantType
可用于判断执行提取的客户是否是共享的所有者。
它还包含可选的rootRecord: CKRecord?
。你可以强迫
在添加到队列之前,通过在shouldFetchRootRecord
操作实例上将true
设置为CKFetchShareMetadataOperation
来获取所有根记录。