我正在用icloud开发coredata。 我有这个问题。 coledata与icloud工作正常,除了同步通知〜 我的代码在这里〜
NSNotificationCenter.defaultCenter().addObserver(self,
selector: "changedDataOniCloud:",
name: NSPersistentStoreDidImportUbiquitousContentChangesNotification,
object: nil)
并假设接收下面的同步通知,
func changedDataOniCloud(notification: NSNotification) {
self.textView.text = "changedDataOniCloud"
}
我有iPhone和iPad。 如果在iphone中更改了数据,那么ipad获取同步数据和更改通知必须响应。 同步数据工作正常,但通知无效!
请在github上查看我的项目 https://github.com/beauspiring/ios/blob/coredata_icloud/Example/ViewController.swift (分支:coredata_icloud)
答案 0 :(得分:0)
我解决了这个问题。
我在这里更改了addObserver代码〜
NSNotificationCenter.defaultCenter().addObserverForName(
NSPersistentStoreDidImportUbiquitousContentChangesNotification,
object: self.moc.persistentStoreCoordinator,
queue: NSOperationQueue.mainQueue(),
usingBlock: { (noti: NSNotification) -> Void in
self.textView.text = "Ubiquitous Content Changes"
})
对象和队列的两个参数很重要 谢谢我的自我:)