以上で完了です。

開発を始めるには、デベロッパー ドキュメント をご覧下さい。

Google Maps Android API をアクティベートする

まず初めに Google Developers Console で次の作業を行います。

  1. プロジェクトを作成または選択する
  2. Google Maps Android API をアクティベートする
  3. 適切なキーを作成する
続ける

Google Maps Android API Utility Library

マップに追加する高度な機能をお探しですか。Google Maps Android API Utility Library は、幅広いアプリケーションで役立つクラスのオープンソース ライブラリです。GitHub リポジトリには、ユーティリティ クラスと、各クラスの使用法を示すデモアプリがあります。

このビデオでは、Chris Broadfoot が、ポリラインのデコード、球面幾何学、バブルアイコンを中心に、ユーティリティ ライブラリを説明します。

クイック セットアップ

アプリの Gradle ビルドファイルに次の依存関係を追加します。

dependencies {
    compile 'com.google.maps.android:android-maps-utils:0.4+'
}

詳細については、セットアップ ガイドをご覧ください。

ユーティリティ

GeoJSON レイヤーのあるマップ

マップに GeoJSON をインポートする

地物を GeoJSON 形式で保存し、このユーティリティを使用して、それらをレイヤーとしてマップ上にレンダリングすることができます。addLayer() を呼び出して GeoJSON データをマップに追加します。addFeature() を呼び出し、GeoJsonFeature オブジェクトを渡して、地物を個別に追加することもできます。

詳細については、Google マップ Android GeoJSON ユーティリティのドキュメントをご覧ください。

KML レイヤーのあるマップ

マップに KML をインポートする

このユーティリティを使用すると、KML オブジェクトを地理的図形に変換して、マップ上にレイヤーとしてレンダリングできます。addLayerToMap() を呼び出して、マップにレイヤーを追加します。任意の Placemark、GroundOverlay、Document、または Folder で getProperties() を呼び出して、KML オブジェクトのプロパティにアクセスできます。

詳細については、Google マップ Android KML ユーティリティのドキュメントをご覧ください。

ヒートマップのあるマップ

マップにヒートマップを追加する

ヒートマップを使用すると、マップ上のデータポイントの分布と相対密度を閲覧者にわかりやすく示すことができます。各場所にマーカーを配置するのではなく、ヒートマップでは色と図形を使用してデータの分布を表します。HeatmapTileProvider を作成し、マップ上の有名なスポットを表す LatLng オブジェクトのコレクションをそれに渡します。次に、新しい TileOverlay を作成し、これにヒートマップ タイル プロバイダを渡して、マップにタイル オーバーレイを追加します。

詳細については、Google マップ Android ヒートマップ ユーティリティのドキュメントをご覧ください。

バブルアイコンのあるマップ

バブルアイコンでマーカーをカスタマイズする

IconGenerator を追加して、マーカーに情報のスニペットを表示します。このユーティリティを使用すると、マーカー アイコンを情報ウィンドウのように見せ、マーカー自体にテキストやその他のコンテンツを含めることができます。これには、複数のマーカーを同時に開いておくことができるというメリットがあります。情報ウィンドウの場合は、一度に 1 つしか開くことができません。マーカーのスタイルを設定したり、マーカーやコンテンツの向きを変更したり、マーカーの背景画像や 9-patch を変更したりすることもできます。

クラスタリングされたマーカーのあるマップ

マーカー クラスターを管理する

ClusterManager を使用すると、異なるズームレベルにある複数のマーカーを管理できます。つまり、マップを見づらくすることなく、マップ上に多数のマーカーを配置できるということです。ユーザーが高いズームレベルでマップを表示すると、個別のマーカーがマップ上に表示されます。ユーザーが低いズームレベルにズームアウトすると、マーカーがまとまってクラスターになり、マップが見やすくなります。

詳細については、Google マップ Android マーカー クラスタリング ユーティリティのドキュメントをご覧ください。

エンコードされたポリラインのあるマップ

ポリラインをエンコードおよびデコードする

PolyUtil は、エンコードされたポリラインやポリゴンを緯度 / 経度の座標に変換したり、その逆の変換を行ったりする場合に役立ちます。

Google マップでは、ポリラインまたはポリゴンを定義する緯度と経度の座標は、エンコードされた文字列として保存されます。ポリラインのエンコードに関する詳細な説明をご覧ください。Google Maps Directions API などの Google API からのレスポンスで、このエンコードされた文字列を受け取ることがあります。

Google Maps Android API Utility Library の PolyUtil を使用して、一連の緯度と経度の座標(「LatLngs」)をエンコードされたパス文字列にエンコードし、エンコードされたパス文字列を一連の LatLngs にデコードできます。これにより、Google Maps API ウェブサービスとの相互運用性が保証されます。

マップ上の 2 地点間の計算された距離

球面幾何学を使用して、距離、面積、方向を計算する

SphericalUtil の球面幾何学ユーティリティを使用すると、緯度と経度に基づいて距離、面積、方向を計算できます。このユーティリティで使用できるメソッドのいくつかを次に示します。

  • computeDistanceBetween() - 2 つの緯度と経度の座標間の距離をメートル単位で返します。
  • computeHeading() - 2 つの緯度と経度の座標間の方向指定を度数で返します。
  • computeArea() - 地球上の閉じられたパスの面積を平方メートル単位で返します。
  • interpolate() - 特定の 2 地点間の距離の比率で指定された、その 2 地点間にある地点の緯度と経度の座標を返します。たとえば、これを使用して 2 点間のマーカーにアニメーションを付けられます。

ユーティリティのすべてのメソッドのリストは、リファレンス ドキュメントをご覧ください。

フィードバックを送信...

ご不明な点がありましたら、Google のサポートページをご覧ください。