我正在更新一个本地核心数据驱动的应用程序以支持 iCloud。我预计的一个挑战是围绕我所谓的“库存对象”——应用程序在首次启动时提供的种子数据,99% 的用户将对其进行自定义。
库存对象
Item A
Item B
定制对象
Tomatoes
Potatoes
如果用户随后在新设备上首次启动应用程序,我认为默认行为将是重新创建库存对象,这些对象将与来自 iCloud 持久存储的自定义对象(项目 A、项目B、Tomatoes、Potatoes),导致用户体验混乱。
一种方法可能是在首次启动时同步检查 iCloud 数据,如果存在,则不创建库存对象。但是,用户可能在第一次启动时处于脱机状态,然后在第二次启动时,本地库存对象与 iCloud 自定义对象会发生同样不受欢迎的合并。
有没有办法为 iCloud 合并添加逻辑,以便来自云的自定义对象(西红柿和土豆)的到来可以指示我在本地库存对象(项目 A 和项目 B)被传送之前删除它们?
谢谢!