データの保存、同期、バックアップを行うアプリを作成する初期段階にいます。アプリはデータベースにデータだけを保存することはありません。 iOS 8以降になるので、CloudKitを使用できます。 Core Data、iCloud、CloudKitがどのように連携するかについて、私はいくつかの研究を行いましたが、まだ明確ではありません。
CloudKitを理解する限り、クラウドとの間でデータを取得および取得する方法にすぎません。 CloudKitは、iCloudとデータを同期するための別の方法ですか?
私の質問は:
CloudKitを使用する場合、ローカルコアデータデータベースを作成する必要はありますか?
データがクラウドにのみ保存されている場合、ユーザーはiOSデバイスがインターネットに接続されていないときにアクセスできます。 CloudKitのキャッシュは限られていることを読みました。
コアデータデータベースをオフラインおよびオンラインで保存および同期するプロセスで、各テクノロジーが何をするかを誰かが分類できる場合。
私の現在の理解は:
Core Dataはデータをローカルに保存するために使用されます
iCloudはデータを同期し、クラウドに保存します
CloudKitは、クラウドにデータを保存および管理する機能を提供しますか?
この質問が閉じられないように十分な情報を提供したいと思います。
こんな感じです:
Core DataでCloudKitを使用する場合は、管理対象オブジェクトとCloudKitレコード間で変換する独自のカスタムコードを記述する必要があります。不可能ではありませんが、記述するコードが増えます。 mightより信頼性が高くなりますが、確実に言うには早すぎます。
ブログ投稿 は、過去にCore DataとiCloudを使用したことがある人の観点からCloudKitを説明しています。
Update、2016年6月: NSPersistentStoreCoordinator
の最新のドキュメント の時点で、iCloudを使用したCore Dataに関連するすべてのものが非推奨としてマークされています。その結果、おそらく新しい開発では避けるべきです。