6

我正在努力在我的 iPhone 应用程序中实现 iCloud 核心数据同步。我正在研究用户工作流程,我遇到的问题是试图弄清楚我的应用程序何时应该将数据“播种”到 iCloud。这可能在两种用例下发生:(1) 首次安装应用程序并且我想使用一些预加载的数据作为种子,或者 (2) 如果预先存在的客户下载了 iCloud 更新,并且他们现有的数据应该是上传到 iCloud。在每种情况下,我都会在应用程序中有一个“种子存储”,我将从中读取数据并将其上传到 iCloud。

问题是,我怎么知道数据是否已经播种?一种选择是在播种完成后从设备中删除种子存储,以便下次启动应用程序时,它会知道它不需要再次播种。

但是,如果商店已经从不同的设备播种了怎么办?是否有某种标志我可以在 iCloud 中检查,它会告诉我数据不应该被播种?或者,当本地种子存储存在时,我是否被迫总是播种数据,然后进行重复数据删除?这将导致问题,因为初始种子数据(来自应用程序安装后的初始启动)是用户可删除的,因此如果他们 (1) 在 iPhone 上安装应用程序,然后删除默认数据集,然后 (2)在他们的 iPad 上安装该应用程序,然后将再次重新上传默认数据

我刚刚想到的另一个选择是,当用户安装应用程序或打开 iCloud 时,我可以问用户:您是否已经上传了数据?您想用本地数据替换 iCloud 中的任何数据吗?如果他们说是,那么它将破坏 iCloud 的数据存储,然后用本地数据重新播种。然而,这样做的问题在于它会产生用户错误的可能性——这是我不希望用户搞砸的事情。

有什么想法吗?

4

0 回答 0