Мое приложение использует основную базу данных данных, содержащуюся внутри UIManagedDocument. Когда я пытаюсь выполнить синхронизацию через iCloud, данные редко обновляются. Я включил журналы вездесущности, добавив в свою схему следующий аргумент приложения.
-com.apple.coredata.ubiquity.logLevel 3
Выходные данные журнала аргументов показывают, что целевое устройство распознает изменения вскоре после того, как они были сделаны на исходном устройстве, однако уведомление NSPersistentStoreDidImportUbiquitousContentChangesNotification
не запускается. Иногда уведомление срабатывает спустя значительное время после просмотра обновлений, но обычно это не так.
Однако, когда я повторно запускаю приложение (в любое время после того, как журнал напечатает некоторый текст об изменениях), уведомление NSPersistentStoreDidImportUbiquitousContentChangesNotification
срабатывает немедленно, что приводит к обновлению данных.
Примечание. Я подписался на уведомление.
[[NSNotificationCenter defaultCenter]addObserver:self
selector:@selector(updatedFromCloud:)
name: NSPersistentStoreDidImportUbiquitousContentChangesNotification
object:nil];