はじめに
マップ 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 マップを起動し、リクエストされたアクションを実行します。
アプリまたはウェブサイトから Google マップを起動するには、クロス プラットフォーム URL を使用することをおすすめします。これらのユニバーサル 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 マップ モバイルアプリ(https://www.google.com/maps など)でデフォルトの Google マップアプリが起動します。
有効な URL を作成する
URL は適切にエンコードする必要があります。
たとえば、一部のパラメータでは区切り文字としてパイプ文字(|
)が使用されています。この場合、最終ページ URL では %7C
としてエンコードする必要があります。緯度/経度の座標や「都市、都道府県」などのカンマ区切り値を使用するパラメータもあります。カンマは %2C
としてエンコードする必要があります。スペースは %20
でエンコードするか、プラス記号(+
)に置き換えます。
また、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 を見つけられない場合にのみ使用されます。特定の施設に確実にリンクする場合は、プレイス ID を使用して正しい場所にリンクすることが保証されます。また、緯度と経度の座標を使用して特定の場所をクエリする場合は、query_place_id
を送信することをおすすめします。
検索の例
場所の検索
場所検索では、場所の名前、住所、またはカンマ区切りの緯度と経度の座標を使用して特定の場所を検索すると、結果の地図にその場所にピンが表示されます。以下の 3 つの例では、同じ場所である CenturyLink Field(ワシントン州シアトルのスポーツ スタジアム)を、異なる場所の値を使用して検索しています。
例 1: 場所の名前「CenturyLink Field」を検索すると、次の地図が表示されます。
https://www.google.com/maps/search/?api=1&query=centurylink+field
例 2: 緯度と経度の座標とプレイス ID を使用して CenturyLink フィールドを検索すると、次の地図が返されます。
例 3: 緯度と経度の座標のみを使用して CenturyLink フィールドを検索すると、次の地図になります。地図にピンが表示されますが、地図やサイドパネルには追加の場所情報が表示されていません。
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
Directions
ルート アクションは、地図上の 2 点以上の指定された地点間の経路と、距離と移動時間を表示します。
ルート 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
が指定されていない場合、Google マップには指定した経路やユーザーの好みに最も関連する移動手段が 1 つ以上表示されます。dir_action=navigate
(省略可): 出発地が利用可能かどうかに基づいて、指定された目的地へのターンバイターン ナビゲーションまたはルートのプレビューを開始します。ユーザーが出発地を指定し、その地点がユーザーの現在地の近くにない場合、またはデバイスの現在地を特定できない場合は、地図でルートのプレビューが表示されます。ユーザーが起点を指定していない場合(この場合、起点はデバイスの現在の位置にデフォルトで設定されます)、または起点がユーザーの現在地に近い場合、マップはターンバイターン方式のナビを開始します。なお、ナビゲーションは、Google マップの一部のサービスや目的地間で利用できない場合があります。そのような場合、このパラメータは無視されます。waypoints
:origin
とdestination
の間のルートの中継点を 1 つ以上指定します。複数の地点を指定するには、パイプ文字(|
)を使用して場所を区切ります(例:Berlin,Germany|Paris,France
)。使用できる地点の数は、リンクを開くプラットフォームによって異なります。モバイル ブラウザでは最大 3 つの地点がサポートされ、それ以外の場合は最大 9 つの地点がサポートされます。地点は、URL にリストされているのと同じ順序で地図上に表示されます。各地点には、場所の名前、住所、またはカンマ区切りの緯度と経度の座標を指定できます。文字列は URL エンコードする必要があります。たとえば「Berlin,Germany|Paris,France」のようなウェイポイントはBerlin%2CGermany%7CParis%2CFrance
に変換する必要があります。Notes:
- 地点はすべての Google マップ サービスでサポートされているわけではありません。そのような場合、このパラメータは無視されます。
- URL で
waypoint_place_ids
を指定していない場合、このパラメータは省略可能です。waypoint_place_ids
を指定する場合は、URL にwaypoints
も含める必要があります。
waypoint_place_ids
(省略可): プレイス ID は、場所を一意に識別するテキスト表記の ID です。Waypoint_place_ids
を使用すると、waypoints
のリストと一致するプレイス ID のリストを指定できます。 プレイス ID はウェイポイントと同じ順序でリストし、パイプ文字「|
」(%7C
として URL エンコード)で区切る必要があります。特定の施設を確定的に指定する場合は、プレイス ID を使用して、適切な場所にリンクすることが保証されます。このパラメータを使用する URL には、waypoints
も含める必要があります。avoid
(省略可): ルートで回避する必要がある機能を設定します。カンマ文字「,
」(%2C
として URL エンコード)で区切って、次のオプションのうち 1 つ以上を設定できます。ferries
highways
tolls
ルートの例
次の URL は、ルートモードで地図を起動し、ユーザーが出発地と目的地を入力できるフォームを提供します。
https://www.google.com/maps/dir/?api=1
次のサンプルでは、スペース ニードルからワシントン州シアトルのパイク プレイス マーケットまでの自転車ルートを示す地図を表示しています。
次のサンプルは、オーストラリアのシドニーの Google からクイーン ビクトリア ビルディングまでの徒歩ルートを示す地図を表示します。
マップを表示する
このマップ アクションは、マーカーやルートのない地図を返します。
地図の 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
次のサンプルは、オーストラリアのカトゥーンバ州カトゥーンバ(NSW)を中心とする地図(-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
: カンマ区切りの緯度と経度の座標(例: 46.414382,10.013988)で指定したviewpoint
の位置に最も近い場所で撮影されたパノラマがビューアに表示されます。ストリートビュー画像は定期的に更新され、毎回わずかに異なる位置から撮影されることがあるため、画像が更新されると、現在地が異なるパノラマにスナップされる可能性があります。pano
: 表示する画像の特定のパノラマ ID。pano
を指定する場合は、viewpoint
も指定できます。viewpoint
は、Google マップがパノラマ ID を見つけられない場合にのみ使用されます。pano
が指定されているのに見つからない場合、viewpoint
が指定されていない場合、パノラマ画像は表示されません。代わりに Google マップがデフォルト モードで開き、ユーザーの現在地を中心とした地図が表示されます。
次の URL パラメータは省略可能です。
heading
: カメラのコンパス方位を北から時計回りの度数で示します。有効な値は -180 ~ 360 度です。省略すると、クエリの視点(指定されている場合)と画像の実際の位置に基づいて、デフォルトの見出しが選択されます。pitch
: カメラの角度(上または下)を指定します。 ピッチは -90 ~ 90 の度数で指定します。正の値を指定するとカメラの角度が上になり、負の値を指定するとカメラの角度が下になります。デフォルトのピッチ 0 は、画像がキャプチャされたときのカメラの位置に基づいて設定されます。このため、多くの場合、ピッチ 0 は水平ですが、常に水平であるとは限りません。たとえば、山で撮影された画像は、水平ではないデフォルトのピッチで表示される可能性があります。fov
: 画像の水平画角を指定します。画角は 10 ~ 100 の範囲の度数で表されます。デフォルトは 90 です。固定サイズのビューポートを処理する場合、画角はズームレベルと見なされ、数値が小さいほどズームレベルが高くなります。
ストリートビューの例
最初の 2 つの例では、エッフェル塔のパノラマが表示されています。例 1 では、位置情報に viewpoint
のみを使用し、オプションの heading
パラメータ、pitch
パラメータ、fov
パラメータを設定しています。比較のために、例 2 では pano
ID と、最初の例と同じパラメータを使用しています。3 つ目の例は、屋内のパノラマ画像を表示します。
例 1: viewpoint
のみを使用してロケーションを指定する
例 2: pano
ID と viewpoint
ロケーションを使用するpano
ID は viewpoint
よりも優先されます。この例では、パノラマ ID が見つかったため、viewpoint
は無視されます。pano
ID に対して表示されるパノラマ画像は、viewpoint
のみを使用した場合よりも新しく、新しい画像になります。
例 3: パノラマ ID で指定された、英国のロンドンにあるレストラン「Sarastro」の内部のパノラマを表示します。
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. ベルサイユ(フランス) | ヴェルサイユ宮殿 | チーズデキス |
2. シャルトル(フランス) | シャルトル大聖堂 | ChIJKzGHdEgM5EcR_OBTT3nQoEA |
3. ルマン(フランス) | サン ジュリアン大聖堂 | ChIJG2LvQNCI4kcRKXNoAsPi1Mc |
4. カーン(フランス) | カーン城 | ChIJ06tnGbxCCkgRsfNjEQMwUsc |
サンプル URL では、ウェイポイントがさまざまな方法で定義されているため、生成される地図でウェイポイントの表示の違いを比較できます。
例 1: 地点に都市、国として定義された例:
例 2: 特定の場所の名前として定義されたウェイポイント:
例 3: 地点を「都市」、「国」として定義し、各地点の特定の施設に対して waypoint_place_ids
も指定する場合:
例 4: 地点を「City」、「Country」として定義しますが、前の例とは順序が異なります。URL に記述されている順序でウェイポイントが地図に表示されることを示します。
地図の例
指定した basemap
(航空写真)と layer
(交通機関)を指定して地図を表示します。
ストリートビューの例
FIFE 画像キーを pano
ID として使用し、ストリートビュー パノラマを表示します。pano
ID の先頭に F: が付いています。