CloudKit共有の概念とWWDC 2016の「CloudKitの新機能」ビデオは、ユーザーが共有レコードを共有してアクセスできるようにするために必要なすべてのことを説明していません。CloudKit Sharing
私は自分のプライベートデータベースでレコードを作成および編集できるようにするためのアプリケーションを作成しました。 私はまた、共有レコードを作成し、提供を共有UIControllerを使用して、これを共有することができました。これは、参加者のユーザーが正常に受信して受け入れることができますが、この共有レコードを照会して表示する方法はわかりません。
アプリは、ユーザーのプライベートデータベースに「MainZone」を作成し、この「MainZone」にCKRecordを作成します。次に、CKShareレコードを作成して保存し、これを使用してUICloudSharingControllerを表示します。
このレコードにアクセスするには、sharedDatabaseをどのように照会しますか? - 私はAppDelegateで受け入れレコードを処理するために必要な、私は問題を発見
"ShareDB can't be used to access local zone"
EDIT
:私はprivateDatabaseで使用されるが、次のエラーを取得されたのと同じクエリを使用して試してみました。今度はCloudKitダッシュボードに表示されますが、依然としてクエリを実行できません。それらを照会するには、sharedDatabase "MainZone"を取得する必要があるようです。
私はこのアプローチをお勧めしません。何百万人ものユーザーが物事を共有しているとどうなりますか?何百万ものレコードゾーンが存在するため、このクエリは非常に大きくなる可能性があります。私は正しいアプローチは、あなたのユーザーと共有されているものへのローカル参照を格納し、これらを使用して変更を照会するように思えると思います。私はこの考え方もクエリを最小限に抑え、変更を登録してから変更を処理することだと考えていますが、状況によってはあまりにも多くのプッシュトラフィックが発生する可能性も懸念しています。 –
Mmm - 実際には、ユーザーは共有されているレコードのゾーンのみを表示するので、正しいかもしれません。 –