3

2 つの iPhone 間で Core Data を介して管理される情報を交換したいアプリケーションがあります。

誰かがこれを試みましたか? もしそうなら、それを行うための最良のアプローチと見なされるものは何ですか (つまり、ファイルで XML や JSON などの中間形式を使用している人々、またはオブジェクトを直接転送できるか)。

質問の範囲が広すぎるように見える場合は申し訳ありませんが、私は転送のアプローチを決定する必要がある段階にあり、この API の経験はありません。

GameKit を使用してデバイス間でオブジェクトを転送するためのコード サンプル、またはそのようなサンプルへのリンクがあれば、非常に感謝しています。

4

2 に答える 2

5

Core Data オブジェクトはコンテキストと永続ストアにリンクされているため、デバイス間で直接転送することはできません。データを中間形式 (NSData に変換される NSDictionary と同じくらい単純なもの) に変換し、それを接続を介してプッシュし、反対側でデータを再構成する必要があります。

個人的には、JSON はこの種の状況に適していると感じています。Core Data オブジェクト グラフを、簡単に移動できる一連の JSON 消費可能オブジェクト (辞書、配列、文​​字列、数値) に簡単に変換できるからです。

于 2010-03-01T20:04:15.827 に答える
2

1回限りの転送をお探しですか?または、2 台の iPhone を一定期間 (ゲームのように) 互いに同期させたいとお考えですか?

この件についてはあまり詳しく調べていませんが、ゲームを作成する場合は、「Core Data: Apple's API for Persisting Data on Mac OS X」という本の「Sync Services and Core Data」の章を参照することをお勧めします。 .

http://www.pragprog.com/titles/mzcd/core-data

GameKit は、単に Bluetooth 経由で接続を確立しているように見えます。将来 IP を使用する場合は、AsyncSockets の使用を検討してください。

http://code.google.com/p/cocoaasyncsocket/

于 2010-03-01T17:17:16.413 に答える