gpt4 book ai didi

swift - 为什么找不到 iCloud 帐户/CKContainer

转载 作者:搜寻专家 更新时间:2023-11-01 06:17:21 26 4
gpt4 key购买 nike

请在下面查看我更新的问题:

我正在使用 CloudKit 开发我的第一个应用程序。在查找交易之前,我正在尝试测试用户是否已连接到 iCloud。

这是我的代码(显示各种测试):

func isICloudContainerAvailable()->Bool {

CKContainer.default().accountStatus { (accountStat, error) in
if (accountStat == .available) {
print("iCloud is available")
}
else {
print("iCloud is not available")
}
}

CKContainer.default().accountStatus { (accountStatus, error) in
switch accountStatus {
case .available:
print("iCloud Available")
case .noAccount:
print("No iCloud account")
case .restricted:
print("iCloud restricted")
case .couldNotDetermine:
print("Unable to determine iCloud status")
}
}


if FileManager.default.ubiquityIdentityToken != nil {
//print("User logged in")
return true
}
else {
//print("User is not logged in")
return false
}
}

这对我自己的帐户来说没问题——我可以按预期工作。但是,对于新用户(即 Apple Review 团队和我自己的测试用户),我得到

iCloud 不可用,以及没有 iCloud 帐户

我确定有一个开放的 iCloud 帐户,因为新用户的 iCloud 邮件正在运行。

更新

我让测试用户注销并重新登录。她第一次启动该应用程序时,收到了 noCloud 消息。如果她重新启动应用程序,它就会工作。我可以在一些地方使用一些想法来查看。我已经使用我自己的计算机和一个新的测试帐户确认了这种行为。

最佳答案

根据文档,

The private database is available only when the value in the ubiquityIdentityToken property is not nil.

It also says

There are times when iCloud may not be available to your app, such as when the user disables the Documents & Data feature or signs out of iCloud.

Documents and Data 现在显然是“设置”中的 iCloud Drive

因此,我会询问有问题的用户,他们的 iCloud Drive 设置是否已启用,以及打开它是否有任何不同。

关于swift - 为什么找不到 iCloud 帐户/CKContainer,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41602477/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com