繁体   English   中英

我可以将CloudKit与其他iCloud帐户一起使用吗

[英]Can i use CloudKit with different iCloud Account

我有一个开发人员帐户,正在为某人开发应用程序。 我希望他能够更改CloudKit中的数据,所以我想使用他的iCloud帐户(他没有开发人员帐户,只有个人帐户)。 但是,我不知道如何区分我的开发人员帐户和他的iCloud帐户。

谢谢

我相信CloudKit的公共数据库和私有数据库的概念可能会实现您需要做的事情。 作为参考,我指的是Apple在Cloudkit上的WWDC演示文稿中的幻灯片45( http://devstreaming.apple.com/videos/wwdc/2014/208xx42tf0hw3vv/208/208_introducing_cloudkit.pdf

考虑到每个应用程序都有一个容器,并且该容器包含1个公共数据库(该应用程序的所有用户都可以访问)和多个私有数据库(每个用户一个),如果您存储的数据不是私有的,则考虑将其存储在公共数据库中。 您可以登录到iCloud帐户,根据需要在开发过程中对其进行修改,而客户端也可以通过登录其iCloud帐户来对其进行修改。 (Apple文档说公共数据库存储在App开发人员的iCloud空间中)

但是,如果将数据存储在私有数据库中,则将数据写入属于当前登录用户的私有数据库的实例。 因此,您编写的任何内容都将进入一个私有数据库实例(Apple文档称其驻留在每个用户的个人iCloud空间中),而他编写的所有内容都将进入其私有数据库实例。 直到最近,故事还没有结束。 但是,现在, cloudKit支持CKShare ,简而言之,它允许用户授予对其私有数据库中特定共享项的访问权限。 因此,您仍然可以将数据写入私有DB,但允许通过CKshare访问。

最后,还有另一种选择,但我不建议这样做。 在设备设置中,您可以注销iCloud并以其他用户身份重新登录。 在其中,您仍在设备上进行开发,但是您已作为客户端登录到iCloud。 但是,这有很多缺点。 首先,凭据共享始终是不良的安全实践。 但是,可能更直接的后果是您的设备将不再与共享或备份到您的iCloud帐户共享,而是与客户端共享。

如果不更好地了解您正在实施的方案,就很难给出更具体的建议。

** 根据OP的评论进行更新 **

我现在明白了。 使用开发cloudkit仪表板可能无法正常工作。 AFAIK,您必须使用开发帐户(而不仅仅是iCloud帐户)登录才能使用cloudkit仪表板。 因此,无论如何,您的客户将根本无法介入。 您可以将客户的电子邮件地址添加为开发团队的成员,这将使他们登录到您的cloudkit仪表板; 但是,这也使他们能够访问iTunesConnect的某些部分。 而且,它确实无法扩展以支持您的应用程序的其他用户。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM