Сохранение подписки в частной базе данных Cloud Kit завершается неудачно с частичной ошибкой и без кода ошибки - PullRequest
0 голосов
/ 06 октября 2019

Я создаю частную и общую подписку в appdelegate. Общая подписка сохраняется. Но подписка на частную базу данных завершается ошибкой с кодом ошибки CKError.partialFailure. Поэтому попытался напечатать CKPartialErrorsByItemIDKey. Я не получаю частичные ошибки по ключу, который использовал. Итак, как узнать, почему моя подписка на сохранение частной базы данных не работает с частичной ошибкой, и исправить ее?

    let subscriptionPrivate = CKDatabaseSubscription(subscriptionID: self.subscriptionIDPrivate)
    let info = CKNotificationInfo()
    info.shouldSendContentAvailable = true
    subscriptionPrivate.notificationInfo = info
    let operation = CKModifySubscriptionsOperation(subscriptionsToSave: [subscriptionPrivate], subscriptionIDsToDelete: nil)

    operation.modifySubscriptionsCompletionBlock = { saved, deleted, error in
        guard error == nil else {
            if let ckerror = error as? CKError {
                print("Failed: Private DB subscription.")
                self.aErrorHandler.handleCkError(ckerror: ckerror)
                print(ckerror.userInfo["CKPartialErrorsByItemIDKey"] as? String ?? "no CKPartialErrorsByItemIDKey")

            }
            return
        }

    }
    operation.qualityOfService = .utility
    privateDB?.add(operation)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...