私は( UIManagedDocumentとして) 1つの単一のCore Dataデータベースを備えた非常にシンプルな靴箱スタイルのiOSアプリを持っており、iCloudサポートを追加しようと考えました。
もちろん、起動時に新しいUIManagedDocumentを作成したり、保存したり開いたりする前に、クラウドに既存のデータベースが存在するかどうかを確認する必要があります。
私はすでにファイル名を知っていて、ドキュメントが1つあるか、まったくないことを知っているので、必要な場合は実際には取得できませんでした
正確なファイル名の述語を使用してNSMetaDataQueryを開始し、結果からfileURLを 取得して(明示的にダウンロードしますか?)、存在する場合はそれを開きます。
URLForUbiquityContainerIdentifierから作成されたものと追加して使用するだけ
[[NSFileManager defaultManager] fileExistsAtPath:self.iCloudDBURL]
ですか?このURLはローカルURLのみであり、「実際の」クラウドを自動的にチェックしませんか?iCloudDBURL
UIManagedDocumentの使用は、この種のアプリにとって「正しい」方法ではないかもしれないことは知っていますが、もっと簡単だと思い、試してみることができました。