私は、起動時にMapViewを膨らませ、ユーザーの位置を取得し、サーバーにリクエストを送信して、その位置の半径内ですべての関心のあるポイント(POI)をJSONとして取得し、マップ上にそれらのポイントを描画するAndroidアプリを持っています。Google マップと同じように、ユーザーがマップをパンして、最初のデータ ロードの外に出ると、より多くの関心のあるポイントがロードされるようにしたいと考えています。
私の最初の考えは、パンイベントを処理し、パンが停止したときにマップの中心を取得し、その場所の半径内の POI を別のサーバーに要求することです。これは、冗長なデータを送り返し、不要なサーバー要求を行うところまですぐに到達するように思えます。
新しいデータを取得するためのリクエストを行うことができるが、同じデータに対して追加のリクエストを行う必要がないキャッシュ戦略を探しています。私の POI もあまり頻繁に変更されないため、キャッシュはアプリのその後の起動を高速化するのに理想的です。そのようなことのためのベストプラクティスはありますか? それとも、前もってより大きなデータ要求を行い、必要に応じて新しいデータを取得することをお勧めしますか?