1

println("queryNotification.recordFields.keys: \(queryNotification.recordFields?.keys)")

このログがどのように可能かわかりませんか? レコードが更新されたという通知を受け取った場合、変更されたフィールドが少なくとも 1 つ必要ですよね? ところで、他のデバイスの 1 つのフィールドを変更しているので、nil の理由recordFieldsがわかりません。少なくとも 1 つのキー値が必要です。

ここに画像の説明を入力

enum CKQueryNotificationReason : Int {
    case RecordCreated
    case RecordUpdated
    case RecordDeleted
}
4

1 に答える 1

3

サブスクリプションの作成時に設定する必要がdesiredKeysあります。

subscription.notificationInfo.desiredKeys = ["neededField"]

于 2014-10-07T07:04:34.167 に答える