1

AppleのiCloudドキュメントによると:

Apple ID を持つすべてのユーザーは無料の iCloud アカウントを受け取りますが、一部のユーザーは、特定のデバイスで iCloud を有効にしないことを選択する場合があります。他の iCloud インターフェイスを使用する前に、URLForUbiquityContainerIdentifier: メソッドを呼び出して、iCloud が有効になっているかどうかを確認する必要があります。このメソッドは、iCloud が有効な場合 (および指定されたコンテナー ディレクトリが使用可能な場合) に有効な URL を返し、iCloud が無効な場合に nil を返します。

URLForUbiquityContainerIdentifier: が nil を返す場合、ユーザーのドキュメント ディレクトリに保存する必要があると思います。ユーザーが後で iCloud を有効にした場合、どうすればよいですか? ドキュメントは、すべてが計画どおりに進んだ場合に何をすべきかを説明するだけですが、それ以外を処理するためのベストプラクティスについては言及していません... iCloud が無効になった場合、icloud ドキュメントのローカルコピーは削除されますか、それともアクセス許可が削除されますか?サンドボックスから?

4

1 に答える 1

0

iCloud 有効化の状態を保存し (つまり、 から nil 以外の結果を得ることができたかURLForUbiquityContainerIdentifier:)、状況の変化の通知を登録する必要があります。状態がオフからオンに変化したことを検出した場合、解決策は簡単です。あなたの世界からどこにでもある世界にファイルをコピーするために呼び出しsetUbiquitous:itemAtURL:destinationURL:error:ます (結局のところ、それは単なるフォルダーです)。

この状況は、ドキュメントでかなりよくカバーされています。

http://developer.apple.com/library/mac/#documentation/General/Conceptual/iCloudDesignGuide/Chapters/iCloudFundametals.html

残念ながら、反対のことを検出した場合 (ユーザーが iCloud をオフにした場合)、ファイルは失われ、取得できませんURLForUbiquityContainerIdentifier:。しかし、それはまだ雲の中にあります。ユーザーにiCloudをオンに戻すように求めるためのインターフェースと、ファイルを非ユビキティの世界に戻すようにユーザーに要求させるためのインターフェースを提供できると思います。

于 2012-12-05T17:51:04.033 に答える