iCloud和核心数据的NSPersistentStoreUbiquitousContentNameKey的唯一性

时间:2013-11-11 01:55:33

标签: core-data icloud

在我的应用程序中,用户可以跨多个设备同步核心数据内容,我应该如何制作NSPersistentStoreUbiquitousContentNameKey?

即。在拥有设备ID的意义上它应该是唯一的吗?因此,如果用户在他们的iPhone上运行应用程序,它有一个NSPersistentStoreUbiquitousContentNameKey,如果他们在iPad上运行它有另一个NSPersistentStoreUbiquitousContentNameKey?

或者从应用程序到应用程序它是否独一无二?即如果我有App A,它有一个NSPersistentStoreUbiquitousContentNameKey而App B有另一个NSPersistentStoreUbiquitousContentNameKey?

2 个答案:

答案 0 :(得分:2)

其目的是唯一地标识用户帐户中的持久存储。因此,如果一个应用程序只有一个持久性存储(如todo列表可能),那么该应用程序的每个安装都可以为此密钥共享相同的值,但如果您想拥有多个持久性存储,那么每个应用程序都需要一个唯一的这里的关键价值。这有帮助吗?

答案 1 :(得分:0)

来自apple docs:

  

内容名称用于标识不同商店   设备,以便事务与之一致   所有持久存储文件的潜在许多实例   设备。因此,您必须确保提供独特的   每个商店的名称 - 例如,UUID。

https://developer.apple.com/library/IOs/releasenotes/DataManagement/RN-iCloudCoreData/