同步完成通知 (iCLoud)

Posted

技术标签:

【中文标题】同步完成通知 (iCLoud)【英文标题】:Notification of synchronization complete (iCLoud) 【发布时间】:2013-10-01 09:55:53 【问题描述】:

如何通知我 iCloud 同步已完成,我如何知道我有新数据要显示? 例如应用程序有一些数据。应用程序已被删除并重新安装。当我使用 openWithCompletionHandler 打开文档时,它会在同步完成之前调用我的块。

【问题讨论】:

【参考方案1】:

在 viewDidLoad 方法中,

//Catch any changes
  NSUbiquitousKeyValueStore *store = [NSUbiquitousKeyValueStore defaultStore];
    [[NSNotificationCenter defaultCenter] addObserver:self
                                             selector:@selector(storeDidChange:)
                                                 name:NSUbiquitousKeyValueStoreDidChangeExternallyNotification
                                               object:store]; 

    [[NSUbiquitousKeyValueStore defaultStore] synchronize];

实现方法,

- (void)storeDidChange:(NSNotification *)notification

    // Retrieve the changes from iCloud
    _notes = [[[NSUbiquitousKeyValueStore defaultStore] arrayForKey:@"AVAILABLE_NOTES"] mutableCopy];
    

也检查这个链接, http://www.appcoda.com/icloud-programming-ios-intro-tutorial/

【讨论】:

感谢您的回答。但这对我不起作用。我想我需要观察 NSPersistentStoreDidImportUbiquitousContentChangesNotification 之类的东西,但它从未触发过。为什么?

以上是关于同步完成通知 (iCLoud)的主要内容,如果未能解决你的问题,请参考以下文章

iCloud 同步通知 NSPersistentStoreDidImportUbiquitousContentChangesNotification 和核心数据的问题

我的 iOS 7 应用程序中没有任何 iCloud 通知触发

与 iCloud 同步文件 [关闭]

iCloud 导入开始的通知

iCloud 文档存储中的通知

iCloud 钥匙串在更新时通知