我有一个对象数组,我当前存储在我的应用程序沙箱的文档目录中。我想将这些数据备份到用户的云中,并允许具有相同 iCloud 帐户的多个用户共享数据,并在有人更改某些内容时启用推送通知。这是一个预算应用程序,所以如果您的配偶购买了东西并将购买输入到应用程序中,您将收到推送通知。我听说 CloudKit “非常简单”,所以我认为这将是一个很好的解决方案。我想不出一个好方法来将这个支出数据数组加载到 Record 结构中。
例如,我有 100 笔交易(每笔交易都有日期、金额和描述)。现在它们存储在自定义对象 SpendingData 的数组中。我是否必须遍历所有这些交易并在 Cloud 仪表板中为每个交易创建唯一的记录?这不会杀死(或至少降低)我的应用程序吗?有一个更好的方法吗?谢谢!
最佳答案
我认为处理这些交易的最佳方式仍然是为每笔交易单独记录。然后,当有新交易时,您只需写入 1 条记录,您的家人就会收到该新交易的推送通知。然后,您可以在推送通知中包含该事务的一些数据。类似于:“AAA 为 BBB 添加了一项新交易”
为了保持应用程序的响应能力,您应该将这些事务保存在内存中并将它们写入磁盘(核心数据或文件),以便在应用程序重新启动时您可以加载它们,并且您的应用程序将拥有所有可用数据,而无需等待从互联网上获取。
关于ios - 将数据从文档存储更改为 CloudKit,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30062698/