クラウドキットを使用しています。属性として持っているChannel
レコードタイプがありisLive
ます。チャネルがライブかどうかを示すかのいずれ0
かです。1
チャンネルのライブ ステータスが 0 から 1 に変化した場合に、すべてのユーザーに通知を送信したい。
私はこのように CKQuerySubscription を定義しようとしました:
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
ただし、これは、このチャネル レコードの更新に関する通知を送信します。isLive
述語は気にしません。
isLive
0 から 1 への変更についてのみ通知を受け取る方法を教えてください。
それとも、このチャネル レコードですべての更新を受信し、アプリで処理してから、必要に応じてローカル通知を送信する方がよいでしょうか?