使用 CloudKit 在用户之间共享 CKAsset?

Posted

技术标签:

【中文标题】使用 CloudKit 在用户之间共享 CKAsset?【英文标题】:Sharing CKAssets between users with CloudKit? 【发布时间】:2015-07-22 15:01:48 【问题描述】:

我想允许我的用户上传他们可以与其他用户共享的图像。这可以放在他们的私人或公共存储中,但在任何一种情况下都需要通过 URL 访问。首先,我想知道这是否可能。

此外,我知道您可以作为开发人员查询任何公开共享的文件。我想知道这是否会危及我的安全 - 是否有可能让第 3 方冒充自己,然后运行查询以收集其他用户的数据。

编辑:这似乎可以通过 cloudkit Web 服务实现。由于这不是原生 API,而是 Web 调用,因此在 ios 9 发布之前它是否可用于生产应用程序?

https://developer.apple.com/library/prerelease/ios/documentation/DataManagement/Conceptual/CloutKitWebServicesReference/RereferenceAssets/RereferenceAssets.html#//apple_ref/doc/uid/TP40015240-CH9-SW1

【问题讨论】:

【参考方案1】:

您可以将CKAssets 与任何其他CKRecord 共享给您想要的任何人。 只有使用您的开发者帐户签名的应用才能访问 CloudKit 容器。从理论上讲,这只能由越狱设备上的人通过将代码注入您的应用程序来破解。但话又说回来,这对您选择的每个解决方案都有效。

如果您想查看如何与某人共享照片的示例,请查看EVCloudKitDao。在演示应用中,您可以开始与任何人聊天并分享图片。

【讨论】:

以上是关于使用 CloudKit 在用户之间共享 CKAsset?的主要内容,如果未能解决你的问题,请参考以下文章

使用 CloudKit 在用户之间共享 CKAsset?

您可以在不同应用程序之间共享 CloudKit 上的数据吗

UICloudSharingController 不显示/不与 CloudKit 应用程序一起使用

CloudKit 分享

如何在 CloudKit 中存储对共享记录的引用

CloudKit:备份所有服务器数据?有啥解决办法吗?