51

現在の場所Google Mapsを見つけるために Android を使用してアプリケーションを開発する必要があり、最も近い場所を見つける必要があります。

(例:現在地から近くの警察署.)

現在の場所を受け入れ、出力に最も近い場所が表示されるはずです。

それを行うための提案、リンク、チュートリアルを手伝ってくれる人はいますか?

4

4 に答える 4

151
  1. まず、Android Googleマップと、API 2について理解するために、このチュートリアルを実行してください。

  2. デバイスの現在の場所を取得するには、この回答またはこの別の回答を参照してください。API2については

  3. 次に、 Google Place APIを使用して現在地の近くの場所を取得できます。また、Place Apiの使用については、このブログを参照してください。

  4. 近くの場所の目印を取得したら、ソースコードを含むこのブログを使用して、API2を使用したバルーンオーバーレイを使用して地図上にマーカーを表示します。

  5. また、地図上の2つのポイント間のルートを描画するための優れたサンプルもあります。これらのリンク、 Link1Link2、およびこのGreatAnswerを参照してください。

これらの手順を実行すると、アプリケーションを簡単に実行できるようになります。唯一の条件は、それを読んで理解する必要があるということです。なぜなら、魔法のように、クリックするだけでは完了しないからです。

于 2011-12-08T08:53:34.103 に答える
13

これまでに多くの回答が寄せられました。これらはすべて、API とチュートリアルへの優れた指針です。追加したいことの1つは、次のようなものを使用して、マーカーが自分の場所からどれだけ離れているかを計算することです:

float distance = (float) loc.distanceTo(loc2);

これが問題の詳細を絞り込むのに役立つことを願っています。ポイント間の距離 (m 単位) の概算を返し、遠すぎる可能性のある POI を取り除くのに役立ちます。マップを整理するのに適していますか?

于 2011-12-08T12:53:05.177 に答える
6

あなたはここでユーザーの場所を取得するグーグルマップを使用することができます!

あなたの場所(経度と緯度)を取得した後、あなたはグーグルプレイスAPIを使うことができます

このコードは、現在地を簡単に取得するのに役立ちますが、最善の方法ではありません。

locationManager = (LocationManager) getSystemService(Context.LOCATION_SERVICE);
Criteria criteria = new Criteria();
String bestProvider = locationManager.getBestProvider(criteria, true);
Location location = locationManager.getLastKnownLocation(bestProvider);  
于 2011-12-08T08:53:16.757 に答える
5

マップの表示には 2 つのオプションがあります

  1. Maps Library for Android を使用して地図をレンダリングする
  2. Web ビュー内で Maps API V3 を使用する

緯度経度のローカル POI を表示するには、Places APIを使用します

于 2011-12-08T08:47:09.580 に答える