如何通过 CloudKit Dashboard 查找用户记录

Posted

技术标签:

【中文标题】如何通过 CloudKit Dashboard 查找用户记录【英文标题】:How to find a user's record via CloudKit Dashboard 【发布时间】:2021-05-30 16:18:17 【问题描述】:

据我所知,Apple 关于使用 CloudKit 仪表板的 documentation 并未说明如何查找特定用户的记录。

假设我的一位用户希望我从我的应用的公共数据库中删除他们的 iCloud 数据。

在 CloudKit 仪表板中查找特定记录的最佳方法是什么?

createdBy 系统字段——但我如何将它连接到用户?还有一个 recordName 系统字段,其中包含某种 ID。

请指教。

谢谢!

【问题讨论】:

【参考方案1】:

当您查看记录上的创建/修改字段时,您会在其下方看到一个长字符串,该字符串是唯一的 recordName(以 _ 开头),对应于 @987654327 中的用户@你的容器中的表。

您可以通过 User recordName 在 CloudKit Dashboard 中查询 Public 数据库。然后您可以选择这些记录并删除它们。

如果有很多记录,编写一些 Swift 代码来获取 recordIDs 并使用搜索创建或修改字段的 CKQuery 可能会更有效。获取这些 recordIDs 后,您可以使用 CKModifyRecordsOperation 提交它们以删除它们。

最后一件事。您可能需要以某种方式向用户显示他们的UserrecordName,以便他们可以将其发送给您以请求删除他们的数据。如果您没有将任何其他数据与Users 记录关联,那么您将无法分辨谁是谁。

【讨论】:

以上是关于如何通过 CloudKit Dashboard 查找用户记录的主要内容,如果未能解决你的问题,请参考以下文章

CloudKit Dashboard 权限不足

为啥我不能从 Xcode 或 CloudKit Dashboard 查询 CloudKit?

在 CloudKit Dashboard 中创建自定义记录区

CloudKit Dashboard 显示推送日志,但是收不到,为啥?

iOS 未收到来自 CloudKit 的推送通知

如何通过 npm 安装 CloudKit JS 库