iCloud設定できたけど、暗中模索。am.ナビゲーションを切り替えiCloud設定できたけど、暗中模索。2013-01-13iCloud設定できたけど、暗中模索。乗り越えた問題や未解消の問題などiCloudの設定を指定ますが、いろいろわからないことばかりです。一応、動いているんです。OSや世代の異なる4台の端末でテストしてもちゃんとデータが同期します。1台の端末だったら削除して再度インストールしても削除前のデータがちゃんと表示されます。1台のデータを変えると他のがパコパコ変わりだして楽しいです。ややこしいことが幾つか。今までの顛末をまとめます。あ、はじめに言っておきます。完全にiCloudを理解していないので、思ったままを書きます。プログラミング入門を主に参考にして作成しました。iCloudを参考にしました。プログラミング入門のとおりにやっていけば、動くところまでは行くような気がします。iCloudCoreDataの準備が整う前にデータを利用しようとしてクラッシュするまぁ上のサイト参考にすれば一応動くんですが、落ちちゃったんです。それは僕のiCloudの理解不足とアプリの仕様に関係しています。僕のアプリは起動直後にCoreDataの読込を行います。上のサイトを参考にしてやったのですが、この部分がうまくいきませんでした。iCloudとCoreDataを連携させた場合、persistentStoreCoordinatorの準備に時間がかかって、CoreDataがすぐに使える状態にはならないのですね。そこで、とりあえずPrepareViewControllerを作って、それを表示して準備中という画面を出しました。その後、CoreDataの準備が整うとがRefetchAllDatabaseDataという通知が来るという作りになっているので、これが来た時に、ビューを差し替えました。self.rootViewController;こんな感じで差し替えできたんですね。これで一応問題は解消です。良いやり方ご存知のかた教えて下さい><。iCloudのデータを削除したい最初、どうしてもiOS5と同期ができなくてpersistentStoreCoordinatorを生成するあたりの設定をいろいろいじりました。いじった後に、やっぱり戻そうとかなってサーバー側の情報どうなんだろうと気になったら、やっぱりちゃんと削除する方がよいという記事を見つけたので削除してみました。どのタイミングで削除すればよいか、記事にもあるStackoverflowを読んだのですが、わけわからず自分で適当なメソッドを作りました。applicationWillResignActiveあたりで実行してみると良いかも。error:&error];}AppDelegate.mのapplicationWillResignActive:に書いてます。流れとしては、通常通りCoreDataが起動してサーバーから更新通知を受け取ったりします。落ち着いたなと思った所で、ホームボタンを押してアプリをバックグラウンドにやる。その時点で上記の処理が行われます。タイミングだとかコードの正しさだとかわからないのですが、とりあえずこれをやったあとiOS5の同期ができるようになったので効果はあったようです。時間があるときにURLForUbiquityContainerIdentifierとか調べなきゃダメですね。その1更新通知が来た時にテーブルをリロードしたい最初コードの意味がわからなくてリロードできてませんでした。読むと、どうやら、NSPersistentStoreDidImportUbiquitousContentChangesNotificationという通知がiCloudのサーバーから届く。その通知が来たらNSManagedObjectContextのmergeChangesFromContextDidSaveNotification:でアプリ内のデータを更新する。いう流れのようでした。2の後にテーブルをリロードするための通知を飛ばしたところ、テーブルの更新に成功しました。CoreDataとUIManagedDocumentとiCloudと(4)わからないこと設定画面のアプリ名とアイコンの設定方法がわからない。今はどこかでつけた不本意な名前(AppIDかproduct名)になっている。アイコンは表示されていない。設定>iCloud>ストレージとバックアップ>ストレージを管理の書類及びデータに表示される。アプリからすべて削除をしても、iCloudからは消えたように見えるが端末にデータが残る。再度アプリを起動するとちゃんとiCloudにデータが復活する。fileというエラーが出るようになった。これはiCloudのバグっぽいです。長くなるので次の記事に詳しく書きます。コメントデータの処理方法の詳細はこちらをご覧ください。フォローツイート関連記事CodeTwitterのOGPが表示されなくて困ったiCloud設定できたけど、暗中模索。...Codeイーロン・マスク氏が関わるOpenAIの人工知能プラットフォーム「Universe」を動かしてみるiCloud設定できたけど、暗中模索。...Codedwangoのlisで遊んでみるiCloud設定できたけど、暗中模索。