1

特定の場所の近くの場所に関する情報を提供するサーバーと通信したいiOS 5アプリを開発しています:場所の場所と注釈。MapKit を使用して、この情報をマップに入力したいと考えています。

次の質問に関する簡単な情報は見つかりませんでした。

  1. MapKit にはすぐに使用できるタイル機能 (Google マップの方法) がありますか? そうでない場合は、追加で作業する必要がありますか?
  2. サーバーから場所情報 (マーカーの位置と注釈) を取得するベスト プラクティスは何ですか?
  3. この情報をキャッシュして、ユーザーがオフライン モードで「自分の街」の近くの場所を確認できるようにすることはできますか?

実際、質問 2 と 3 は相互に関連しています。どちらも、既にマップ上に複数回存在する情報 (場所 + 注釈) を取得できないという問題に対処しています。

ここで明らかなことを見落としていないことを願っています。

ありがとう!

更新 1: (マップではなく、場所に関して)より具体的には、サーバーから取得した場所を含む領域の「手作りの」論理タイルを作成する方法に興味があるため、ユーザーがスクロールしたときにそれらを再取得する必要はありません。地図?この機能を自分で実装できることはわかっています。たとえば、取得したばかりの場所を取得した直後に Core Data を使用してローカル ストレージに書き込むか、キューを整理する必要がありますか? または、サーバー上の特定のリージョンに関するリクエストをいつ実行する必要があるのか​​、デバイス上に既に存在するローカル データをフェッチするだけなのか、どうすればわかりますか? 知りたいのですが、推奨されるアプローチやベストプラクティスはありますか? うまくいけば、私はここにそれを明確に書きました。

更新 2: ここ (リンク、例) のベスト プラクティスについて疑問に思っています。このすべて (ポイント 2 + 3) を最初から作成しないようにします。これをカプセル化しているフレームワークや優れたチュートリアルはありますか?

4

2 に答える 2

0

@Stanislaw-クライアントの1つに対して、 PreventConnectというアプリで説明した機能を実装しました。クライアントはすでにいくつかのデータをGoogleFusionテーブルに保存しています。いくつかの場所の地理座標を格納する別のGoogleFusionテーブルを追加することで、既存のソリューションを拡張しました。あなたの質問に答えるために、これはすべて言われています...

1)マップ部分自体は、箱から出してすぐに使用できます。タイルなどですが、ズーム範囲、ピンドロップ、注釈などを期待どおりに機能させるには、コーディングを行う必要があります。 。

2)GoogleFusionソリューションが非常に効果的であることがわかりました。Google Fusionを使用したくない場合は、StackMob、database.comなどの他のクラウドデータベースプロバイダーがあります。Googleは無料で、GoogleFusionとの通信を非常に簡単にするiOSSDKがあります。

3)絶対に!データの多くは、デバイスのローカルのCoreDataストアにキャッシュされます。これにより、パフォーマンスと応答性が大幅に向上します。

于 2012-09-07T23:14:50.550 に答える