アプリで CloudKit 同期に取り組んでいます (プライベート データベースにカスタム ゾーンを使用する「Tiny data, all devices」モデル)。
CKModifyRecordsOperation
ドキュメントで次のように説明されているタイプclientChangeTokenData
のプロパティが含まれています。NSData
フェッチ操作からレコードを変更する場合、このプロパティを使用してクライアント生成データ トークンを指定し、最後に変更したレコードのバージョンを示します。指定したデータ トークンを次のレコード フェッチのデータ トークンと比較して、サーバーがデバイスの最後の変更要求を正常に受信したことを確認します。
リクエストごとに、サーバーがリクエストを正常に受信したかどうかを示す完了ブロックを取得することを考えると、なぜわざわざする必要があるのか わかりません。このクライアント トークンを手動で比較する必要があるのはなぜですか?
clientChangeTokenData
ユースケースを正しく処理するには指定が必要ですか? ローカル データの変更を追跡し、データが変更されるたびにすべてをキューにプッシュします。リモートの変更は、ゾーン サブスクリプションによって追跡されます。
必要な場合、すべての種類のレコードの変更がある場合、このトークンを正しく生成するにはどうすればよいですかCKModifyRecordsOperation
(API の使用はバッチ操作を目的としています)。ここでの一般的なワークフローは何ですか?
ありがとうございました。