Как правильно отследить загрузку iCloud?

Я пытаюсь интегрировать использование iCloud в мое приложение. Я понял, как работает этот процесс и его основы. Я уже мог загружать контент в iCloud, но мне нужно отслеживать ход загрузки, чтобы улучшить Ux, который я предоставляю конечному пользователю.

Итак, в основном я загружаю документ, используя метод ниже:

- (void)saveToURL:(NSURL *)url forSaveOperation:(UIDocumentSaveOperation)saveOperation completionHandler:(void (^ __nullable)(BOOL success))completionHandler __TVOS_PROHIBITED;

Прежде чем вызвать этот метод, я также инициализирую MetadataQuery. Этот запрос специфичен, и предполагается, что он получает ход документа, передавая имя документа и его URL в качестве параметров. Что-то вроде этого:

- (void)startMonitoringMetadataQueryWithBackupName:(NSString *)backupName andBackupURL:(NSURL *)backupURL;

Реализация метода:

После этого я получаю только события, вызванные NSMetadataQueryDidStartGatheringNotification и даже в этом случае полученная информация не приносит никакой полезной ценности.

Я ожидал получить события от NSMetadataQueryDidUpdateNotification, принося MetadataQuery с результатами, чтобы получить NSURLUbiquitousItemPercentUploadedKey значение. Однако я не получаю никаких уведомлений такого типа и не могу отслеживать ход загрузки.

Я что-то пропустил? У меня нет идей, потому что это кажется таким простым и работает не так, как ожидалось.

(Примечание: мне также нужно реализовать аналогичное поведение при загрузке документа, и я думаю, что подход будет таким же, просто изменив запрос valueListAttributes , Боюсь, эта проблема сохранится, когда я ее реализую)

Спасибо

0 ответов

Другие вопросы по тегам