Pie*_*rce 7 ios swift cloudkit ckreference
是否有人有使用经验的CloudKit
选项DeleteSelf
了CKReference
?这是我从文档中得到的:
DeleteSelf
引用记录的删除操作.删除记录还会删除包含指向该记录的CKReference对象的所有记录.删除附加记录可能会触发更多记录的级联删除.删除在默认区域中是异步的,在自定义区域中是立即的.
所以我一直在测试这个,我创建了多个CKReference
对象,使用CloudKit Dashboard
和使用我的应用程序.每当我使用我的应用程序执行此操作时,我都会像这样创建引用:
let reference:CKReference = CKReference(recordID: savedFriend.friendID, action: CKReferenceAction.DeleteSelf)
Run Code Online (Sandbox Code Playgroud)
我必须做错事,因为无论何时我去手动删除使用仪表板引用的记录,或者设置我的应用程序以编程方式删除它,记录都会消失,但引用永远不会被删除.我想也许我应该等待,它最终会发生,但几小时后它仍然在那里检查,就像它本应该删除自己.这有点令人沮丧,因为我设计了一些我的代码,假设这可以工作,现在我可以有一个浪费资源的应用程序试图找到一个CKRecord
不再存在的.我应该不依靠这个来工作吗?我感谢任何帮助或建议.
更新〜04/07/2016
我跳了回来,并发布了一个更新,问题已经解决了.我并不完全相信这个问题不会重新出现,所以我昨晚寻求一些保证.我创建了5个不同的,CKRecords
并创建了各种不同的CKReference
对象,以便在我的数 然后我继续为CKReferenceAction.DeleteSelf
每个引用设置选项(我通过仪表板手动尝试了两个,其他三个以编程方式完成).无论如何,我等了几分钟然后删除了引用的记录......十分钟后,引用仍然存在.我又等了5-10分钟,他们还在那里,所以我上床睡觉,假设早上他们肯定要走了,对吧?错误!12个小时后,CKReference
条目仍在那里,引用的记录仍然没有.我肯定是在挠头,似乎这是一个错误CloudKit
.我应该提一下,我也注意到我的仪表板中有一些奇怪的行为.在过去的四天左右,在左下角,它一直表示它是"重新索引开发数据",这里是一张图片,例如:
这会导致这个问题吗?有人熟悉这个问题并知道解决这个问题的方法吗?任何建议,将不胜感激.我已经向Apple提交了一份错误报告.
这很可能是权限问题。
仅当删除记录的用户对所有需要删除的记录具有“写入”权限时,级联删除才会起作用。因此,在 CloudKit Dashboard 中,级联删除仅适用于使用开发者的 iCloud 帐户创建的记录。
在那里查看我的答案:https ://stackoverflow.com/a/38606004/6643055
归档时间: |
|
查看次数: |
784 次 |
最近记录: |