Я пытаюсь использовать CKQueryOperation
, а не performQuery
в моей базе данных CloudKit.
Оба работают, но при использовании CKQueryOperation я не получаю сообщение об ошибке, когда устройство отключено, но при использовании performQuery
Вот пример моих костей my performQuery
, база данных - это мой CKDatabase
database.performQuery(q, inZoneWithID: nil) { (records:[CKRecord]?, error:NSError?) in
if error != nil {
print(error!.localizedDescription)
return
}
}
Ошибка, когда устройство отключено, что позволяет мне запрашивать пользователя. Ошибка
The internet connection appears to be offline
Однако я не получаю ошибок при использовании CKQueryOperation
let p = NSPredicate(format:"recordID IN %@", student.courses)
let q = CKQuery(recordType: String(Course), predicate: p)
let queryOperation = CKQueryOperation(query: q)
queryOperation.recordFetchedBlock = { record in
// not called without network connection - doesn't enter scope
print(record)
}
queryOperation.queryCompletionBlock = { (cursor: CKQueryCursor?, error: NSError?) in
// not called without network connection - doesn't enter scope
print(cursor)
print(error)
}
database.addOperation(queryOperation)
При соединении я получаю свои данные для обоих методов, поэтому он работает как ожидалось.
Как/Где я сообщал об ошибке при использовании CKQueryOperation
?
Спасибо