はじめに
マップの URL を使用すると、プラットフォームをまたいで使用できる共通の URL を作成して、Google マップを起動したり、検索を行ったり、ルートやナビゲーションを取得したり、地図ビューやパノラマ画像を表示したりできます。 使用しているプラットフォームに関係なく、URL の構文は同じです。
マップ URL を使用するのに Google API キーは必要ありません。
ユニバーサル クロス プラットフォーム構文
Android アプリ、iOS アプリ、またはウェブサイトのデベロッパーは、URL を作成すると、Google マップを開き、リクエストされたプラットフォームを、マップが開いているときに使用するプラットフォームに関係なく実行できます。
- Android デバイスの場合:
- Android 向け Google マップ アプリがインストールされていてアクティブになっている場合は、URL によりマップアプリで Google マップが起動し、リクエストされた操作が実行されます。
- Google マップ アプリがインストールされていない場合、または無効になっている場合、URL はブラウザで Google マップを起動し、リクエストされた操作を実行します。
- iOS デバイスの場合:
- iOS 向け Google マップ アプリがインストールされている場合は、URL により、マップアプリで Google マップが起動し、リクエストされた操作が実行されます。
- Google マップ アプリがインストールされていない場合、URL によりブラウザ内で Google マップが起動し、リクエストされた操作が実行されます。
- 他のデバイスで、URL がブラウザで Google マップを起動し、リクエストされたアクションが実行されます。
クロス プラットフォームの URL を使用してアプリまたはウェブサイトから Google マップを起動することをおすすめします。このユニバーサル URL を使用すると、使用するプラットフォームに関係なく、地図に関するより幅広いリクエストを処理できるようになります。モバイル プラットフォームでしか機能しない機能(ターンバイターン方式のナビゲーションなど)については、Android または iOS 向けのプラットフォーム固有のオプションを使用することをおすすめします。次のドキュメントを参照してください。
- Android 向け Google マップ インテント - 特に Android 向け Google マップ アプリを起動する場合
- iOS 向け Google マップ URL スキーム - iOS 向け Google マップ アプリを起動する場合
Google マップを起動して特定のアクションを実行する
Google マップを起動して、サポートされている関数を実行するには、リクエストされたアクションに応じて、次のいずれかの形式の URL スキームを使用します。
- 検索 - 特定の場所のピンを表示する Google マップを起動するか、通常の検索を行って地図を表示し、結果を表示します。
https://www.google.com/maps/search/?api=1¶meters
- ルート - ルートをリクエストして、その結果で Google マップを起動します。
https://www.google.com/maps/dir/?api=1¶meters
- 地図を表示する - マーカーやルートなしで Google マップを起動します。
https://www.google.com/maps/@?api=1&map_action=map¶meters
- ストリートビュー パノラマを表示する - インタラクティブなパノラマ画像を起動します。
https://www.google.com/maps/@?api=1&map_action=pano¶meters
重要: パラメータ api=1
は、この URL が対象となるマップ URL のバージョンを示します。このパラメータはすべてのリクエストで必須です。有効な値は 1 のみです。api=1
が URL に含まれていない場合、すべてのパラメータは無視され、デフォルトの Google マップ アプリはブラウザまたは Google マップ モバイルアプリ(https://www.google.com/maps など)によって起動します。
有効な URL の作成
URL は適切にエンコードする必要があります。
たとえば、一部のパラメータではパイプ文字(|
)が区切り文字として使用されますが、最終ページ URL では %7C
としてエンコードする必要があります。その他のパラメータ(カンマ区切り値、緯度/経度の座標、市区町村、都道府県など)が使用されます。カンマは %2C
としてエンコードする必要があります。スペースは %20
でエンコードするか、プラス記号(+
)に置き換えます。
また、1 回のリクエストにつき URL は 2,048 文字に制限されます。URL の作成時には、この制限に注意してください。
地図操作
使用可能な地図操作は、検索、ルート、地図の表示、ストリートビュー パノラマの表示です。アクションは、リクエスト URL に必須パラメータとオプション パラメータを指定して指定します。URL の標準規則と同様に、アンパサンド(&
)文字を使用してパラメータを区切ります。アクションごとに、パラメータのリストとその有効な値が検索パラメータ セクションに一覧表示されます。
検索
検索アクションにより、表示されている地図領域全体の検索結果が表示されます。特定の場所を検索すると、地図に指定された場所にピンが表示され、利用可能な場所の詳細が表示されます。
検索 URL の作成
https://www.google.com/maps/search/?api=1¶meters
パラメータ
query
(必須): 地図上でハイライト表示する場所を定義します。このクエリ パラメータは、すべての検索リクエストに必要です。query_place_id
(省略可): 場所 ID は、場所を一意に識別するテキスト表記の ID です。search
アクションでは、query
を指定する必要がありますが、query_place_id
を指定することもできます。両方のパラメータを指定した場合、query
は、Google マップで場所 ID が見つからない場合のみ使用されます。特定の施設に明確にリンクしようとしている場合は、正しい場所にリンクしていることが保証されます。緯度と経度の座標を使用して特定の場所をクエリする場合は、query_place_id
を送信することをおすすめします。
検索の例
場所検索
場所検索では、場所の名前、住所、または緯度/経度のカンマ区切りの座標を使用して特定の場所を検索し、表示された地図にその場所のピンが表示されます。これら 3 つの例は、異なる位置情報を使用して、同じ場所である CenturyLink Field(ワシントン州シアトルのスポーツ スタジアム)を検索した例です。
例 1: 場所の名前「CenturyLink Field」を検索すると、次の地図が表示されます。
https://www.google.com/maps/search/?api=1&query=centurylink+field
例 2: 緯度と経度の座標と場所 ID を使用して CenturyLink Field を検索すると、次の地図が表示されます。
例 3: 緯度と経度の座標のみを使用して CenturyLink Field を検索すると、次の地図が表示されます。地図にはピンがありますが、地図やサイドパネルには追加の場所情報は提供されていません。
https://www.google.com/maps/search/?api=1&query=47.5951518%2C-122.3316393
カテゴリ検索
カテゴリ検索では、一般的な検索キーワードを渡すと、指定された場所の近くにある条件に一致するリスティングが検索されます。
位置情報が指定されていない場合、Google マップは現在地付近のリスティングを検索しようとします。カテゴリ検索の場所を提供する場合は、一般的な検索文字列に場所を含めます(例: pizza+seattle+wa
)。
この例では、ワシントン州シアトルのピザレストランを検索すると、次の地図が表示されます。
https://www.google.com/maps/search/?api=1&query=pizza+seattle+wa
ルート
ルート アクションは、指定された複数の地点間のパスと、移動距離および移動時間を表示します。
ルート URL の設定
https://www.google.com/maps/dir/?api=1¶meters
パラメータ
origin
: ルートを表示する出発点を定義します。デフォルトでは、デバイスの位置情報など、最も関連性の高い開始位置が設定されます。設定されていない場合、ユーザーが出発地を入力するための空のフォームが結果として表示されるマップに表示されます。値は、場所の名前、住所、または緯度と経度の座標のいずれかで指定します。文字列は URL エンコードする必要があります。たとえば、「City Hall, New York, NY」のような住所はCity+Hall%2C+New+York%2C+NY
に変換する必要があります。注: URL に
origin_place_id
を指定しない限り、このパラメータは省略可能です。origin_place_id
を指定する場合は、URL にorigin
も含める必要があります。origin_place_id
(省略可): 場所 ID は、場所を一意に識別するテキスト表記の ID です。施設を明確に指定する場合は、場所 ID を使用することをおすすめします。これにより、正しい場所にリンクしていることが保証されます。このパラメータを使用する URL にはorigin
も含める必要があります。destination
: ルートのエンドポイントを定義します。そうでない場合、結果の地図は空白のフォームとなり、ユーザーが目的地を入力できるようになります。値は、場所の名前、住所、または緯度と経度の座標のいずれかで指定します。文字列は URL エンコードする必要があります。たとえば、「City Hall, New York, NY」のような住所はCity+Hall%2C+New+York%2C+NY
に変換する必要があります。注: URL に
destination_place_id
を指定しない限り、このパラメータは省略可能です。destination_place_id
を指定する場合は、URL にdestination
も含める必要があります。destination_place_id
(省略可): 場所 ID は、場所を一意に識別するテキスト表記の ID です。施設を明確に指定する場合は、場所 ID を使用することをおすすめします。これにより、正しい場所にリンクしていることが保証されます。このパラメータを使用する URL にはdestination
も含める必要があります。travelmode
(省略可): 移動手段を定義します。選択できるのは、driving
walking
(可能な場合、歩道や歩道を優先)bicycling
(自転車専用道路と、可能な場合にご希望の通りを経由する)かtransit
です。travelmode
が指定されていない場合は、指定したルートやユーザー設定に最も関連性の高いモードが 1 つ以上表示されます。dir_action=navigate
(省略可): オリジンが利用できるかどうかに基づいて、ターンバイターン ナビゲーションまたは指定されたデスティネーションへのルート プレビューを起動します。ユーザーが出発地を指定していて、ユーザーの現在地に近くない場合や、デバイスの現在地が利用できない場合、地図は経路のプレビューを起動します。ユーザーがオリジンを指定していない場合(オリジンがデフォルトのデバイスの現在地である場合)、またはオリジンがユーザーの現在地の近くにある場合は、地図でターンバイターン ナビゲーションが行われます。すべての Google マップ サービスやすべての目的地でナビが利用できるわけではありません。その場合、このパラメータは無視されます。waypoints
:origin
とdestination
の間でルートをルーティングする中間の場所を指定します。複数の地点を指定するには、パイプ文字(|
)を使用して場所(例:Berlin,Germany|Paris,France
)を指定します。指定できる地点の数は、リンクを開くプラットフォームによって異なり、モバイル ブラウザでは 3 つまで、それ以外の地点では 9 つまで指定できます。地点は URL のリストと同じ順序で地図に表示されます。 各地点には、場所の名前、住所、または緯度と経度の座標(カンマ区切り)を指定できます。文字列は URL エンコードする必要があります。たとえば、「ベルリン、ドイツ|パリ、フランス」などの地点はBerlin%2CGermany%7CParis%2CFrance
に変換する必要があります。メモ:
- すべての Google マップ サービスで地点がサポートされているわけではありません。その場合、このパラメータは無視されます。
- URL で
waypoint_place_ids
を指定しない限り、このパラメータは省略可能です。waypoint_place_ids
を指定する場合は、URL にwaypoints
も含める必要があります。
waypoint_place_ids
(省略可): 場所 ID は、場所を一意に識別するテキスト表記の ID です。Waypoint_place_ids
を使用すると、waypoints
のリストと一致するプレイス ID のリストを指定できます。場所 ID は地点と同じ順序で記載し、パイプ文字「|
」(URL エンコードは%7C
)を使用して区切ります。特定の施設を明確に指定する場合は、正しい場所にリンクすることが最善の保証となる場所 ID です。このパラメータを使用する URL にはwaypoints
も含める必要があります。
経路の例
次の URL は、ルートモードで地図を起動し、ユーザーが出発地と目的地を入力できるフォームを提供します。
https://www.google.com/maps/dir/?api=1
次の例は、スペース ニードルからワシントン州シアトルのパイク プレイス マーケットまでの自転車ルートを示す地図を起動します。
次のサンプルでは、オーストラリアのシドニーからクイーン ビクトリア ビルディングまでの、徒歩経路が表示された地図が起動されています。
マップを表示する
地図操作は、マーカーやルートが含まれていない地図を返します。
地図の URL の設定
https://www.google.com/maps/@?api=1&map_action=map¶meters
パラメータ
map_action=map
(必須): 表示する地図表示の種類を指定します。マップとストリートビューは同じエンドポイントを共有します。地図を確実に表示するために、map_action
をmap
に指定する必要があります。center
(省略可): 地図ウィンドウの中心を定義し、緯度と経度の座標をカンマ区切り値(-33.8569,151.2152
など)で指定します。zoom
(省略可): 地図の初期ズームレベルを設定します。有効な値は、0(全世界)から 21(個々の建物)までの範囲の整数です。上限は、選択した場所で利用可能な地図データによって変わります。デフォルト値は 15 です。basemap
(省略可): 表示する地図のタイプを定義します。値はroadmap
(デフォルト)、satellite
、terrain
のいずれかです。layer
(省略可): 地図上に表示する追加のレイヤがあれば定義します。値は、none
(デフォルト)、transit
、traffic
、bicycling
のいずれかです。
地図の例
この URL の例では、ユーザーの現在地を中心としたデフォルトの Google マップを起動します。
https://www.google.com/maps/@?api=1&map_action=map
以下のサンプルでは、オーストラリアのカトムバ(-33.712206,150.311941
)を中心とする地図を表示し、省略可能な zoom
パラメータと basemap
パラメータを設定しています。
ストリートビュー パノラマの表示
パノラマ アクションの場合、ビューアを起動してストリートビュー画像をインタラクティブ パノラマとして表示できます。各ストリートビュー パノラマは、単一の地点からの 360 度のパノラマビューを提供します。画像は、360 度の水平ビュー(周囲全体)と 180 度の垂直ビュー(真上から真下)が含まれています。このパノラマ アクションは、カメラが中心にある球体としてレンダリングされたビューアを起動します。カメラを操作して、カメラのズームや向きを制御できます。
Google ストリートビューは、指定されたサービス提供地域全体について、指定された場所のパノラマビューを提供します。ユーザーの投稿 360°写真とストリートビューのスペシャル コレクションも利用できます。
ストリートビュー URL の設定
https://www.google.com/maps/@?api=1&map_action=pano¶meters
パラメータ
map_action=pano
(必須): 表示するビューのタイプを指定します。マップとストリートビューは同じエンドポイントを共有します。パノラマを確実に表示するには、action
をpano
に指定する必要があります。
次のいずれかの URL パラメータも必要です。
viewpoint
: ビューアは、viewpoint
の場所に最も近い場所で撮影されたパノラマ画像を表示します。緯度 / 経度のカンマ区切り座標(例: 46.414382,10.013988)で指定します。ストリートビューの画像は定期的に更新され、毎回毎回異なる位置から写真が撮影される場合があります。このため、画像が更新されると、撮影場所が異なるパノラマに変化する場合があります。pano
: 表示する画像の特定のパノラマ ID。pano
を指定する場合は、viewpoint
も指定できます。viewpoint
は、Google マップでパノラマ ID を検出できない場合にのみ使用されます。pano
は指定されているが見つからず、viewpoint
が指定されていない場合、パノラマ画像は表示されません。代わりに、Google マップがデフォルト モードで開き、ユーザーの現在地を中心とした地図が表示されます。
次の URL パラメータは省略可能です。
heading
: カメラのコンパスの向首方向を北から時計回りの角度で示します。指定できる値は -180 ~ 360 度です。省略した場合、デフォルトの見出しは、クエリの視点(指定されている場合)と画像の実際の位置に基づいて選択されます。pitch
: カメラの上下の角度を指定します。 ピッチは -90 ~ 90 の度数で指定します。正の値を指定するとカメラは上向きになり、負の値を指定するとカメラは下向きになります。デフォルトのピッチ 0 は、画像が撮影されたときのカメラの位置に基づいて設定されます。このため、ピッチは多くの場合、水平であるとは限りません。たとえば、山で撮影された画像は、水平ではないデフォルトのピッチで表示されます。fov
: 画像の水平画角を決定します。視野は度数(10 ~ 100)で表します。デフォルトは 90 です。固定サイズのビューポートを扱う場合、画角はズームレベルとみなされ、数値が小さいほどズームレベルが高くなります。
ストリートビューの例
最初の 2 つのサンプルは、エッフェル塔のパノラマ画像を表しています。この例では、ビジネス情報に viewpoint
のみを使用し、オプションの heading
、pitch
、fov
パラメータを設定しています。比較のため、例 2 では最初の例で設定したものと同じパラメータと pano
ID を使用しています。3 番目の例では、屋内のパノラマ画像を表示しています。
例 1: viewpoint
のみを使用して地域を指定する。
例 2: pano
ID と viewpoint
の場所を使用します。
pano
ID は viewpoint
よりも優先されます。この例ではパノラマ ID が検出されるため、viewpoint
は無視されます。pano
ID で表示されるパノラマ画像は、viewpoint
のみを使用して見つかった画像とは少し異なり、最近の画像です。
例 3: イギリスのロンドンにある Sarastro レストランの内部のパノラマ画像を表示し、パノラマ ID を指定します。
https://www.google.com/maps/@?api=1&map_action=pano&pano=4U-oRQCNsC6u7r8gp02sLA
パノラマ ID を検索する
特定のパノラマ画像の ID を確認するには、複数の方法があります。
- JavaScript の場合は、StreetViewPanorama クラスを使用します。
- Android の場合は、パブリック クラス StreetViewPanoramaLocation を使用します。
- iOS の場合は、GMSPanorama クラスを使用します。
- Google Street View Image API を使用してメタデータ リクエストを行うこともできます。画像メタデータのリクエストは、ストリートビュー ID を含むストリートビュー パノラマに関するデータを提供します。
その他の例
地点の例
以下の例では、Google マップを起動し、パリからフランス、シェルブール、フランスまでの運転ルートと、次の地点を経由するルートを表示します。
国、市区町村 | 場所の名前 | プレイス ID |
---|---|---|
1. ベルサイユ(フランス) | ヴェルサイユ宮殿 | ChIJdUyx15R95kcRj85ZX8H8OAU |
2. シャルトル(フランス) | シャルトル大聖堂 | ChIJKzGHdEgM5EcR_OBTT3nQoEA |
3.ルマン(フランス) | ル マン サン ジュリアン大聖堂 | ChIJG2LvQNCI4kcRKXNoAsPi1Mc |
4. カーン(フランス) | カーン城 | ChIJ06tnGbxCCkgRsfNjEQMwUsc |
サンプルの URL では地点がさまざまな方法で定義されるため、結果として得られる地図における地点の表示の違いを比較できます。
例 1: 出発地と都市の定義:
例 2: 地点名に定義された地点
例 3: 都市と国として定義された地点であり、各地点の特定の施設に対する waypoint_place_ids
も指定します。
例 4: 地点を都市や国として定義しているものの、上記の例とは異なる順序で地点をリストしています。マップが URL 内の順に地点を表示する方法を示します。
地図の例
指定された basemap
(衛星)と layer
(交通機関)の地図を表示します。
ストリートビューの例
pano
ID として FIFE 画像キーを使用してストリートビュー パノラマを表示します。pano
ID の前に F: が付いていることに注意してください。