首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >CloudKit从OSX中的记录ID获取实际对象

CloudKit从OSX中的记录ID获取实际对象
EN

Stack Overflow用户
提问于 2016-08-17 12:27:59
回答 1查看 123关注 0票数 0

我正在尝试使用CKSubscription订阅更改。我正在跟踪苹果的文档,这似乎是非常笼统和不完整的。指向Apple的链接

通过didReceiveRemoteNotification方法在AppDelegate中将记录ID发送给我的应用程序是有意义的,我已经获得了记录Id:使用以下代码:

代码语言:javascript
复制
func application(application: NSApplication, didReceiveRemoteNotification userInfo: [String : AnyObject]) {
        let cknNotification = CKNotification(fromRemoteNotificationDictionary: userInfo as! [String:NSObject])

        if cknNotification.notificationType == .Query,
            let queryNotification = cknNotification as? CKQueryNotification {
            let recordId = queryNotification.recordID
            print(recordId)
        }

如何将CKNotification转换为我在Cloudkit中存储的实际对象?我是否需要执行另一次提取,还是只需转换CKNotification中包含的数据。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-08-17 13:20:56

看来我已经解决了。

通知只让您知道它们已经更改。你需要做的工作,以提取新的记录和更新。(真有道理)

privateCloudDatabase().fetchRecordWithID(recordId!,completionHandler:{(记录获取,错误)

代码语言:javascript
复制
            //Check the Record Type if multiple.. I only have one type.
   let myRecordType = recordfetched?.recordType
            let myObject = mySuperObject(record: recordfetched!)
            print("done")
        })

//我可能应该添加更多的可选检查--但上面只说明了解决方案以及获得的简单程度。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/38996677

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档