0

私はCloudKitを使用します。私は属性としてisLiveを持っているChannelレコードタイプを持っています。チャネルが有効かどうかを示す0または1のいずれかを指定できます。レコード属性更新で起動するCloudKitサブスクリプション通知を作成するにはどうすればよいですか?

let liveSubscription = CKQuerySubscription(recordType: "Channel", predicate: NSPredicate(format: "(recordID == '4cebe441-c6f7-47af-85df-e6572e757c5c') AND (isLive == 1)"), options: [.firesOnRecordUpdate]) 
    let liveNotificationInfo = CKNotificationInfo() 
    liveNotificationInfo.shouldSendContentAvailable = false 
    liveNotificationInfo.shouldBadge = true 
    liveNotificationInfo.alertBody = "Test is live now" 
    channelSubscription.notificationInfo = liveNotificationInfo 

これは送信ん:

は私が1

から0からのチャンネル変更は私はこのようなCKQuerySubscriptionを定義しようとした場合、ライブステータスがあれば、すべてのユーザに通知を送信したいですこのチャンネルレコードの更新に関する通知。それはisLive述語を気にしません。

isLiveの通知のみを0から1に変更するにはどうすればよいですか?

このチャンネルのすべてのアップデートを受信し、アプリで処理し、必要に応じてローカル通知を送信する方が良いですか?

+0

こんにちはすべての回避策を得ましたか?それは私のためにも機能しません。 –

答えて

0

1つの属性の更新でのみ変更を登録することはできません。フィールドのうちANYが更新された場合、常に通知を受け取ります。これははるかに優れており、常にこのように機能します。

関連する問題