如果用户不打开 iCloud Drive,具有 CloudKit 的应用程序有哪些限制

Which restriction an app with CloudKit has if user does not turn on iCloud Drive

如果用户不开启 iCloud Drive,哪些 CloudKit 服务不可用?

是否可以通过应用程序打开 iCloud Drive?

我想从 public 容器下载记录应该与 iCloud Drive 无关,只有在启用时才写入容器?!

CloudKit 已链接到 iCloud 帐户。如果用户登录到 iCloud,但没有启用 iCloudDrive,则 CloudKit.

没有限制

如果用户没有登录 iCloud,那么他只能访问 public 数据。您可以在 CloudKit 仪表板的任何记录类型上设置此项。

无法从您的应用中更改登录信息。您只能从设置应用程序登录。也无法从您的应用程序启用 iCloud Drive。为此,您还需要转到设置应用程序

这里是 Apple 暗示 CloudKit 需要 iCloud Drive 的地方:

Improve the user’s experience by verifying that the user is signed in to their iCloud account before saving records. If the user is not signed in, present an alert instructing the user how to enter their iCloud credentials and enable iCloud Drive. Insert your code that saves records in the else clause below.

https://developer.apple.com/library/ios/documentation/DataManagement/Conceptual/CloudKitQuickStart/CreatingaSchemabySavingRecords/CreatingaSchemabySavingRecords.html#//apple_ref/doc/uid/TP40014987-CH3-SW8