当存储空间已满时,将应用程序数据保存到用户的iCloud(CloudKit)吗?

时间:2019-02-19 18:30:11

标签: ios swift icloud cloudkit

这更多是一个理论/方法问题。因此,我有一个需要将数据保存/备份到iCloud的应用程序。因此,如果用户意外卸载了该应用程序,他们仍然可以从其iCloud存储中检索该应用程序。问题是:

  1. 使用Cloudkit将应用程序数据保存/备份到iCloud的一般方法是什么?数据应该自动保存还是让用户通过单击按钮来决定?
  2. 如果我每次用户进入应用程序时都自动备份数据,那么如果用户的iCloud存储空间已满怎么办? iCloud是否为每个单独的应用分配了不同的容器,或者与用户的iCloud存储容器相同?

谢谢您的时间。

1 个答案:

答案 0 :(得分:1)

萨米尔,

在iCloud上查找错误消息,我发现了一些与空间使用有关的错误。

https://developer.apple.com/documentation/foundation/icloud/icloud_error_codes

尤其是这个...

var NSUbiquitousFileNotUploadedDueToQuotaError:Int 该项目无法上传到iCloud,因为它将使帐户超出其配额。

这建议如果您尝试将某人的数据保存到iCloud并且他们没有空间,那将无法正常工作。

另一个问题确实与Apple的准则有关,他们询问/建议您确保负责任地使用其他用户iCloud空间。

是自动保存数据吗……也许不是,这取决于我们实际上在谈论多少数据。如果我下载了一个应用程序,并且它开始以静默方式写入我的iCloud驱动器,当我发现它时不会太感动。最好不要问您的用户是否要将其保存到iCloud。