这不仅是我能想到的解决方案.我的目标是通过iCloud同步我的应用程序,但在不同的用户(不同的iCloud帐户)之间同步。“正常”iCloud同步只能在使用相同iCloud帐户的不同设备之间同步。所以我想如果CloudKit能处理这件事。我读了很多关于CloudKit的书,我不确定我是否正确地理解了所有的东西。
所以你有一个私人数据库和一个公共数据库。同样,私有数据库仅用于同一个帐户。所以我要去找公共数据库..。但是-我不希望每个人都能同步相同的数据,但只有“选定的朋友”,其他iCloud帐户.
这有可能吗?我该怎么设计呢?
我的第一个想法是,用户A创建一个具有唯一名称的Record Type。然后用户B可以输入该记录类型的唯一名称,通过这样做,他可以访问数据,用户A和用户B可以同步他们的应用程序,但其他用户被排除在外。如果用户C和用户D想在一起使用这个应用程序并保持同步,他们会创建他们自己的记录类型。
这是正确的设计吗?如果很多用户使用这个应用程序,我会得到许多记录类型..。
还是应该为每个用户使用唯一的NSpredicate?
或者,我如何让不同的用户与特定的其他用户进行同步,而不是与应用程序的公共数据库中的每个人同步?
谢谢你帮忙!
发布于 2015-07-28 11:58:16
在CloudKit中,不可能在生产数据库中创建新的记录类型。
您应该通过向您的CKReference中添加一个recordTypes来解决这个问题,它指示了记录的所有者。然后,在所有谓词中,您必须对该CKReference进行筛选。
https://stackoverflow.com/questions/31633637
复制相似问题