Core Data のビルトイン iCloud サポートを使用する場合、使用しているデバイスの種類は関係なく、Core Data スタックが同じ方法で初期化されるだけです。すべての iOS デバイスまたは Mac で同じ iCloud ストアを使用でき、一方で作成されたデータを別のデバイスで読み取ることができます。
ただし、重要な詳細が 1 つあります。すでにデータ ストアがあり、iCloud サポートを追加した場合、それらの既存のレコードは自動的にクラウドに移行されません。iCloud はトランザクション ログに基づいて機能し、トランザクション ログは変更を保存したときにのみ作成されます。すぐに変更されない既存のデータはトランザクションを生成しないため、クラウドには移動しません。
iCloud を追加するときに既存のデータがある場合は、データを新しいデータ ストアに移行して、それらの既存のレコードのトランザクションを強制する必要があります。NSPersistentStoreCoordinator
のmigratePersistentStore:toURL:options:withType:error:
メソッドを使用すると、これをかなり簡単に行うことができます。難しいことではありませんが、必要であることは必ずしも明らかではありません。
まず最初に、Apple の WWDC ビデオを iCloud で見ることをお勧めします。特に、WWDC 2012 のセッション 227、Using iCloud with Core Dataです。次に、細心の注意を払うことをお勧めします。現在のところ、Core Data の iCloud サポートは、Apple の API の中で最も信頼できるものとは言えません。