27
Androidでユーザーの現在地を取得する最も簡単で最も堅牢な方法は何ですか?
LocationManagerAndroid のAPIは、ユーザーの場所の時折の大まかな概算のみが必要なアプリケーションに使用するのは少し面倒なようです。 私が取り組んでいるアプリは、それ自体が位置情報アプリではありませんが、近くのお店のリストを表示するには、ユーザーの位置を取得する必要があります。ユーザーが動き回っているのか、そのようなことをしているのか心配する必要はありません。 これが私がしたいことです: ユーザーに近くの場所のリストを表示します。 ユーザーの場所をプリロードして、ActivityXで必要になるまでに使用できるようにします。 更新の正確さや頻度は特に気にしません。1つの場所を取得するだけで十分です。たぶん私が気になりたいのであれば、数分ごとに場所を更新しますが、それは大きな優先順位ではありません。 GPSまたはネットワークロケーションプロバイダーのいずれかを備えている限り、どのデバイスでも機能します。 難しいことではないようですが、2つの異なる位置情報プロバイダー(GPSとNETWORK)を起動して、それぞれのライフサイクルを管理する必要があるように見えます。それだけでなく、#2を満たすために、複数のアクティビティで同じコードを複製する必要があります。私はgetBestProvider()過去に使用して、ソリューションを1つのロケーションプロバイダーだけに削減することを試みましたが、それは実際に最高の結果を提供するプロバイダーではなく、最高の「理論」プロバイダーのみを提供するようです。 これを達成する簡単な方法はありますか?