CloudKit работал последние пару недель, и сегодня утром, когда я пытался сохранить запись, то, что я делал несколько раз раньше, я начал получать ошибку разрешения
Error saving to CloudKit: <CKError 0x600001f48ed0: "Permission Failure"
(10/2007); server message = "Operation not permitted"; uuid = 78FA3DD1-
EA44-4701-9A7E-8291F076DD8F; container ID = "[CloudKit Container Name]"> - Error fetching auth tokens from server:
Operation not permitted'
Я трижды проверил, что он запрашивает нужный контейнер, что и есть (у меня на CloudKit настроены только два контейнера, так что это простая проверка.
Я выключил и снова включил CloudKit в XCode какпопытаться принудительно сбросить его (не уверен, что это помогло, но подумал, что я бы попробовал)
В случае необходимости, вот как я сохраняю в CloudKit (не было проблем с этим битомкод в прошлом.
func createRecord(title: String, type: String, comment: String) {
let audioRecord = CKRecord(recordType: "Audio")
audioRecord["title"] = title as CKRecordValue
audioRecord["type"] = type as CKRecordValue
audioRecord["comment"] = comment as CKRecordValue
let audioURL = audioRecorder.getAudioURL()
let audioAsset = CKAsset(fileURL: audioURL)
audioRecord["audio"] = audioAsset
DispatchQueue.main.async {
CKContainer.default().publicCloudDatabase.save(audioRecord) { [self] record, error in
//print(CKContainer.default())
if let error = error {
print("Error saving to CloudKit: \(error.self) - \(error.localizedDescription)")
} else {
print("Record has been successfully saved to CloudKit")
}
}
}
}