我正在尝试使用CloudKit获取记录,但它失败并出现以下错误:"获取资产失败"我确认(通过CloudKit仪表板)该记录存在于我的公共数据库和默认区域以及默认容器(不是自定义容器)中。这是我的代码:
CKContainer *container = [CKContainer defaultContainer];
CKDatabase *publicDatabase = [container publicCloudDatabase];
CKRecordID *artworkRecordID = [[CKRecordID alloc] initWithRecordName:@"1C0DCC08-71D3-4C47-A417-DB92D2EECB67"];
[publicDatabase fetchRecordWithID:artworkRecordID completionHandler:^(CKRecord *artworkRecord, NSError *error) {
if (error) {
// Error handling for failed fetch from public database
}
else {
// Display the fetched record
}
}];
答案 0 :(得分:2)
我有一个用户得到这个,因为他们没有在iPhone设置中登录到iCloud。
答案 1 :(得分:0)
正如您在屏幕截图中看到的,错误代码为4,这是一个网络错误
请参阅xcdoc://?url = developer.apple.com / library / ios / documentation / CloudKit / Reference / CloudKit_constants / index.html#// apple_ref / c / tdef / CKErrorCode
尝试切换到3G或WiFi以查看是否存在不同的行为。 如果您转到应用设置,是否启用了移动数据? 你能从模拟器运行代码吗?