我想将用户偏好存储在附加到用户公共用户记录的CloudKit中。首选项可以是私有记录,也可以是共享记录(由其他用户共享)。
我是否可以使用CKReference存储对共享记录的引用,如果可以,如何确定存储的CKReference是指私有数据库还是公共数据库?
目前,如果我将一个CKReference存储到一个私有记录中,那么我可以查询私有数据库来检索记录,但是如果我将一个CKReference存储到共享记录中,那么如何确定要查询哪个数据库。
我是否可以使用CKReference进行跨数据库的链接,或者必须使用类似于记录名的内容来搜索它,并存储单独的引用以指示它是私有的还是共享的?
编辑:
好的,阅读文档是有好处的,但是我花了一段时间才找到我需要的解释,以下是文档的摘录
--您也可以使用记录IDs -当您不能使用CKReference对象引用记录时。引用仅在数据库的单个区域内有效。若要引用当前区域或数据库之外的对象,请将字符串保存在记录的CKRecordID和CKRecordZoneID对象中。当您希望稍后检索记录时,请使用这些字符串重新创建记录和区域ID对象,以便您可以获取记录.。
https://developer.apple.com/documentation/cloudkit/ckrecordid
发布于 2018-04-04 01:15:20
好的,阅读文档是有好处的,但是我花了一段时间才找到我需要的解释,以下是文档的摘录
您也可以在无法使用CKReference对象引用记录时使用记录ID。引用仅在数据库的单个区域内有效。若要引用当前区域或数据库之外的对象,请将字符串保存在记录的CKRecordID和CKRecordZoneID对象中。当您希望稍后检索记录时,请使用这些字符串重新创建记录和区域ID对象,以便可以获取记录。
https://developer.apple.com/documentation/cloudkit/ckrecordid
https://stackoverflow.com/questions/46448374
复制相似问题