問題タブ [cksubscription]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
1162 参照

ios - CloudKit サブスクリプションが iOS10 に保存されない

iOS10で変更されたように見えるサブスクリプションの追加に関する「CloudKit Best Practices」WWDCの話に従っています。

以下のコードは「Success!」を返しますが、「AllChanges」サブスクリプションが CloudKit ダッシュボードのサブスクリプション タイプに表示されません。

私はXcode 8ベータ6を使用しています。

0 投票する
2 に答える
386 参照

ios - レコード属性の更新時に起動する CloudKit サブスクリプション通知を作成する方法は?

クラウドキットを使用しています。属性として持っているChannelレコードタイプがありisLiveます。チャネルがライブかどうかを示すかのいずれ0かです。1

チャンネルのライブ ステータスが 0 から 1 に変化した場合に、すべてのユーザーに通知を送信したい。

私はこのように CKQuerySubscription を定義しようとしました:

ただし、これは、このチャネル レコードの更新に関する通知を送信します。isLive述語は気にしません。

isLive0 から 1 への変更についてのみ通知を受け取る方法を教えてください。

それとも、このチャネル レコードですべての更新を受信し、アプリで処理してから、必要に応じてローカル通知を送信する方がよいでしょうか?

0 投票する
0 に答える
256 参照

swift - 複数の比較による CloudKit サブスクリプション

CloudKit 通知のサブスクリプションを作成しようとしていますが、述語を正しく取得できないようです。比較述語が 1 つだけ表示される単純な通知が表示されるため、ペイロードは正しく構成されていますが、述語をもう少し複雑にすると、通知を受け取りません。複数のレコード変更をサブスクライブする必要がありますが、1 つずつ実行する必要があります。私が望むのは、IN または OR を使用してサブスクリプションを 1 つだけ持つことができるようにすることですが、うまくいかないようです。

作業述語

機能しない述語

参照用に CKQuery CloudKit ガイド ( https://developer.apple.com/reference/cloudkit/ckquery ) を使用しています。サブスクリプションの述語の実装が異なるのでしょうか、それとも間違った述語を作成しているだけですか? ちなみに、すべての述語はコンパイルされ、ブレークポイントで正しく表示され、コードにエラーはなく、アプリはどの時点でもクラッシュしません。サブスクリプションが実際にサーバー上にあり、述語を使用していることを確認しました指定しました。レコードがデバイス上で変更された場合でもサーバー上で変更された場合でも、より複雑な述語はいずれにも一致しないようです。

完成させるために、最初の述語を使用して完全に機能する残りのサブスクリプション コードを次に示しますが、残りは使用しません。

どんな助けでも大歓迎です。