2016-08-17 5 views
0

変更を購読するためにCKSubscriptionを使用しようとしています。私は非常に一般的で不完全なAppleのドキュメントに従っています。このコードを使用:CloudKit OSXのレコードIDから実際のオブジェクトを取得

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を変換するにはどうすればよい私はレコードIDを取得する点がAppDelegatedidReceiveRemoteNotificationメソッドを介して私のアプリに送信されてしまっていると私は私のレコードIDを持っている Link to Apple Doc

実際のオブジェクトに私はCloudkitに格納する?別のフェッチを実行する必要がありますか、またはキャストする必要があるCKNotificationに含まれているデータです。

答えて

0

私はそれを働いたように見えます。

通知では、変更されたことのみが通知されます。新しいレコードを取り出して更新する作業をする必要があります。 。 - ちょうどソリューションを示し超えるが

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

における{(recordfetched、エラー)//私はおそらくより多くのオプションのチェックを追加する必要があります

privateCloudDatabase()fetchRecordWithID(レコードID !, completionHandlerは(感覚が本当に作り)どのくらい簡単に入手するのですか。

関連する問題