企業向けのライセンスとサポートが含まれます
google.maps.* の名前空間に API をロードするにはGoogle Maps API を使用すると、数通りの方法で Google マップを Web ページに埋め込むことができ、シンプルに使ったり幅広くカスタマイズしたりできます。現在、Google Maps JavaScript API、Google Maps API for Flash、Google Static Maps API が提供されています。さらに、Google マップ内で実行するミニ アプリケーションが作成できる Mapplets API も提供しています。必要に応じて、これらの API をいくつか組み合わせることもできます。
企業や商用 Web サイトを運営している場合は、Google Maps API Premier もご検討ください。
Google マップ チームは、絶えず新しいマップ データを配信し、国際的な対象範囲を拡大しています。最新の対象範囲の詳細は、次のスプレッド シートをご覧ください。上部のドロップダウン リストを使用すると、スプレッド シートにフィルタが適用できます (たとえば、リストから「はい」を選択してルート案内が表示される国をすべて見る)。データの対象範囲はデータ プロバイダとのライセンス契約に変更があった場合、変更される場合があります。
はい。Google マップは、現在、プログラミングや Google Maps API を使用せずに、ご覧の地図を Web サイトやブログに埋め込むことができるようになっています。
詳しい説明はこちらをご覧ください。
http://code.google.com/apis/maps/documentation/staticmaps/
この方法は、地図を GIF/JPG/PNG 形式で送信し、携帯端末を対象としたマップ タイプをサポートしています。
Google マップでは、現在、次の Web ブラウザをサポートしています。
はい、もちろんです。サイトに掲示されている地図のページ ビュー数に制限はありません。1 日あたりのページ ビューが 500,000 回を超えると思われる場合は、Google までご連絡ください。トラフィックが処理できるように容量を追加します。
ジオコーディング機能 (住所を座標の組み合わせに変換) は、このよくある質問に記述されている使用の制限に該当しますのでご注意ください。
API キーにサインアップするだけで、ご自分のサイトに地図を掲示できるようになります。例と詳細については、Maps API のドキュメントをご覧ください。
Google Maps API の利用規約は、次の URL をご覧ください。
http://www.google.com/apis/maps/terms.html
Google Maps API Premier の利用規約は、次の URL をご覧ください。
Maps API は、一般の方が使えるよう無料で開放されているサイトであれば、どのようなサイトでも使用できます。利用規約を満たしているサイトであれば、商用 Web サイトでも非営利目的の Web サイトでも API を利用できます。
ただし、町で非合法な薬物が購入できる場所を特定するといったような違法行為に Google Maps API を使用しないでください。また、Google は各個人のプライバシーも尊重しています。Google Maps API を個人のプライベートな情報を特定するために使用しないでください。
アプリケーションを開発したり、開始する前に利用規約に準拠しているかどうかをご自分の弁護士に確認してください。Google のエンジニアが提供できるのは技術的助言だけであり、法律上の助言をする資格はありません。Google は、いつでもサービスの利用を一時停止または停止する権利を有します。利用規約をよくお読みください。
企業や商用 Web サイトを運営している方々は、Google Maps API Premier もご検討ください。ご要望に応える方向で利用規約が変更されています。
一般の方が使えるように無料で開放されているサイトであれば、どのようなサイトでも使用できます。たとえば、Web サイトの運営が広告でまかなわれている場合は、Google Maps API の利用規約の範囲内と考えられます。地図に情報を掲示する(例: 売り家を載せる)のに課金しているが、Google Maps API を使用した情報の表示はサイトの無料部分で行っている場合も Google Maps API の利用規約に適合します。
ただし、すべての商用利用が許可されているわけではありません。次の基準のいずれかに一致する場合は Google Maps API Premier を使用しなければなりません。
Google は、いつでもサービスの利用を一時停止または停止する権利を有していることにご留意ください。利用規約をよくお読みください。
アプリケーションが無料で開放されているか、利用規約に準拠していれば、Google Maps API を使用したリアルタイム データ (追跡) の表示に制約はありません。内部使用に限られたアプリケーションには、Google Maps API Premier をご利用ください。詳細については、利用規約の 10.9 をご覧ください。
使用できますが、パスワードで保護されたサイトに Google Maps API を使用する前に利用規約をよくお読みください。一般の方が無料で簡単にパスワード登録ができたり、パスワードで保護された地図の目的が開放されている地図の強化(管理など)である場合、そのサイトは利用規約に適合していると考えられます。その他の場合は、Google Maps API Premier をご利用ください。
デベロッパーは、利用規約のセクション 9.2 に従い、実装した Maps API が、ユーザーの端末を地図上で位置付けるのにセンサーを使用しているかどうかを報告する必要があります。センサーには、WIFI/GPS/Cell ID 情報に基づいてユーザーに緯度/経度を提供する Gears の Geolocation モジュールなどがあります。
センサー使用の報告に必要な情報は、JavaScript Maps API と Static Maps API で入手できます。Maps API for Flash を使用しているデベロッパーが、センサーの使用を特定できるメカニズムは現在ありません。
センサー パラメータは最近導入されたものなので、以前からのサイトが、パラメータの定義ができないために無効になることはありません。ただし、デベロッパーは、できるだけ早くパラメータの報告をしていただくようお願いします。
Google マップ画像の印刷物やオフライン メディアでの使用には、次の URL にある使用規約ガイドラインが適用されます。
検索結果にご自分のページやサイトが含まれないようにするには、Google のウェブマスター ヘルプセンターにある手順に従ってください。あなたの Maps API 実装に含まれるコンテンツを Google がインデックスした場合、Google は、検索結果から該当するコンテンツを除外するための最新の手順を提供します。
Google Maps API キーを登録するには、Google アカウントにログインし、利用規約に同意する必要があります。1 つのアカウントで取得できるキーの数は無制限です。
通常のアプリケーションでは、ドメイン名を登録することをお勧めします。キーは、そのドメイン、サブドメイン、ドメイン内のホスト上のすべての URL、ホスト上のすべてのポートについて有効になります。
たとえば、http://www.mygooglemapssite.com/ を使用してキーを登録すると次の URL が有効になります。
ただし、次の URL は有効になりません。
推奨に従い、http://mygooglemapssite.com/ に対してキーをリクエストすると、上記の URL すべてについてキーが有効になります。
http://www.mygooglemapssite.com/ に対するキーは、このアドレスを使用してサイトにアクセスした場合に限り、受け付けられます。IP アドレスを使用してサイトへアクセスした場合、(たとえば http://10.1.2.3/) や DNS CNAME レコードによって www.mygooglemapssite.com にエイリアスされたホスト名を使用してアクセスした場合は受け付けられません。
ローカル ドライブ (file://) で開発を行っている場合、Google Maps JavaScript API ではキー チェックは省略され、Google Maps API for Flash では制限が弱くなっています。Google Maps API for Flash を使用してローカル ドライブで開発を行っている場合、タイルには「DEBUG」と表示されますのでご注意ください。ローカル ホストで開発を行っている場合、キーは http://localhost に登録してください。
JavaScript Maps API を使用していてキーがサイトで作動しない場合、alert(window.location.host) をコードに挿入し、ページをリロードしてください。警告に表示されたドメインをキーに登録する必要があります。
Maps API for Flash を使用していてキーが作動しない場合、キーが、SWF が埋め込まれたドメインではなく、SWF の呼び出し元のドメインに登録されていることを確認してください。
Google Maps API の各バージョンに行われた変更のリストは次の URL にあります。
http://groups.google.com/group/Google-Maps-API/web/api-version-changes
特定のバグの発見や修正が行われた Google Maps API のバージョンを Google Maps API Issue Tracker を使って確認するには、次の URL をご覧ください。
特定のバージョンが指定されない場合に使われる現在の API バージョンを確認するには、次の URL をご覧ください。
http://groups.google.com/group/Google-Maps-API/web/api-version-changes
Google Maps JavaScript API のバージョニング システムの詳細については、Google Maps API デベロッパー ガイドをご覧ください。
google.maps.* の名前空間に API をロードするにはAPI のロードの標準的なメソッドは、GMarker、GMap2 などのグローバル オブジェクトを生成します。API のバージョン 2.134d と同様、オブジェクトは、追加として google.maps.* 名前空間内で宣言されます。オブジェクトを名前空間内に限定したい場合は、スクリプト タグで API をロードするときに、「file=api」を指定する代わりに「file=googleapionly」を指定してください。
サポートされている言語のスプレッド シートをご確認ください。
マップ コントロール、著作権、ジオコード、ルート案内など、Google Maps API はさまざまなテキスト出力の受け入れや生成ができます。言語によって使用する文字セットが異なるため、Google Maps API では、スクリプト タグまたはクエリに「oe」パラメータを付加して出力エンコーディングの指定をしたり、または「ie」パラメータを付加して入力エンコーディングの指定をしたりできます。たとえば、スクリプト タグを次のように修正して、Google Maps JavaScript API でマップ コントロールに utf-8 エンコーディングを強制することができます。<script src="http://maps.google.com/maps?file=api&v=2&oe=utf-8&key=abcdefg">
また、クエリを次のように修正して HTTP ジオコーダの出力を変更できます。http://maps.google.com/maps/geo?q=1600+Amphitheatre+Parkway,+Mountain+View,+CA&output=xml&oe=utf8&key=abcdefg
Google Maps API Premier の利用者は、セキュリティで保護された (https) 接続で Google Maps JavaScript API と Google Static Maps API にアクセスいただけます。セキュリティで保護されたサイトで、無料の Maps API キーを使って Google Maps API が使用されている場合、ブラウザ画面には保護されていないオブジェクトの警告が表示されます。
また、保護されたサーバーに保存された KML/GeoRSS ファイルは、JavaScript API の GGeoXML クラスでは解析できません。
バグと考えられる動作を見つけたら、まず Google Maps API Google グループにご報告ください。報告していただくことで、他のデベロッパーがバグを検証し、対象コードから潜在的な問題を排除できるようになります。
機能をリクエストする場合も、まず Google Maps API Google グループに報告し、リクエストを解決できるソリューションがないことを確認してください。
新しいバグの発見を確認したり、リクエストが既存の Google Maps API の機能で解決できないことを確認したら、Google Maps API Issue Tracker を使用してバグまたはリクエストを報告してください。
Issue Tracker にバグやリクエストを追加する前に、該当するバグやリクエストが既に追加されていないか確認してください。既に追加されている場合は、関心のある記事にスターを付け、更新の通知が受け取れるようにしてください。
ご質問を Google Maps API ディスカッション グループに投稿していただくと、Google Maps API のデベロッパー コミュニティから支援を受けられます。Google マップ チームもこのグループをモニターし、参加しています。
最も効率よく支援を受けるためには次の点にご注意ください。
Google Maps API Premier の利用者は、Google Maps API Premier サポートチームにご連絡いただくこともできます。Google Maps API Premier サポート チームの連絡先は、クライアント ID を記したウェルカム メールでお伝えしています。Google Maps API Premier サポートチームに連絡いただくときは、必ずクライアント ID をお伝えください。
はい。このプロセスは「ジオコーディング」と呼ばれています。Google Maps API には、ジオコーディングを実行するためのメソッドがいくつか用意されています。Google Maps JavaScript API では GClientGeocoder オブジェクトを使用し、Google Maps API Flash では ClientGeocoder を使用してジオコードします。また、代わりにジオコーディング リクエストを直接 HTTP ジオコーダに送信することもできます。
ジオコーダ リクエストに適用される使用制限にご注意ください。また、ジオコーダを Google Maps API で表示する位置情報の取得以外の目的で使用することは利用規約違反になります。Google Maps API 以外のアプリケーションで、HTTP ジオコーダを利用し、住所をジオコードした結果をキャッシュし、後から Google Maps API で表示されるようにすることもできます。ただし HTTP ジオコーダを使用して取得した位置情報は、Google Mpas API以外のアプリケーションでは使用できない場合があります。
Google Maps API ジオコーダが現在サポートしている国を見るには、このスプレッド シートの「geocoding」のプルダウン リストで「Yes」を選択してください。
ジオコードによる位置情報の精度は国によって異なります。したがって返された精度パラメータを検討し、アプリケーションの目的に対して有効な一致ができているか判断してください。ジオコーディング データが提供可能かどうかはデータ プロバイダと Google の契約によって変更される場合があります。
Google Maps API が現在サポートされていない国でのジオコーディングについては、このリストでその他のジオコーディング サービスをご確認ください。
1 つの IP アドレスから 24 時間以内に受信するジオコード リクエストが 15,000 以上の場合、または1 つの IP アドレスから送信されるジオコード リクエストの頻度が多すぎる場合、Google Maps API ジオコーダはステータス コード 620 で応答を開始します。この記事では、PHP からのジオコード リクエストの調節方法の説明と、その場合のサンプル コードを示しています。ジオコーダの過度の使用が続く場合、この IP アドレスからの Google Maps API ジオコーダは永久にブロックされる場合があります。
JavaScript で GClientGeocoder または Flash で ClientGeocoder を使用している場合、ジオコーダ リクエストはユーザーの Web ブラウザで行われ、ユーザーの IP アドレスの割り当て数には影響しません。つまり、一人のユーザーが過度に使用しても他のサイト ユーザーに影響はありません。ただし、多くのユーザーが 1 つのプロキシを通じて Google Maps API にアクセスする場合は、これらのユーザーでそのプロキシの IP アドレスの割り当て数を共用することになります。
HTTP ジオコーダを使用してジオコーダ リクエストを行うと、HTTP リクエストを行うため、システムの IP アドレスの割り当て数に影響します。後で使うためにキャッシュしておく目的で HTTP ジオコーダに非常に大きいサイズの住所のセットを送信する必要がある場合は、この目的のために個別のバッチ ジオコーディング割り当て数を提供している Google Maps API Premier をご検討ください。
Google Maps API を補完するために他のジオコーディング サービスも使用できます。他のジオコーディング サービスはこちらをご覧ください。
Google Maps API ジオコーダでは、米国の国道は次のように住所を指定する必要があります。
精度数値はジオコードされた地物のスケールを表します。結果の信頼性の等級やレベルを表すものではありません。
ジオコーダがクエリを受信すると、指定された住所の最も合致する地物を検出しようとします。該当する領域にあるデータの量によって、合致する建物を特定できることもありますし、通りや地区しか検出できないこともあります。
地区のように広域レベルの地物しか検出できない場合でも経度/緯度は返されますが、それは地物の中心の経度/緯度となり、リクエストされた特定の住所の位置からずれている可能性があります。精度は合致したオブジェクトのスケールを表しているので、ジオコードがどれだけ正確かがわかります。
可能な精度の数値とそれを表す地物のスケールは Google Maps JavaScript API リファレンスをご覧ください。
The Google Maps JavaScript API を使用すると GDirections クラス経由でルート案内を示すことができます。このクラスは基礎的な複数地点のルート案内を手順を追って示し、オーバーレイとルート パネルを自動的に作成します。ドキュメントにその他の例の説明があります。
また、ルート案内に Google マップを簡単にリンクさせることができます。Google マップのルート案内には次の形式を使用することをお勧めします:
http://maps.google.com/maps?saddr={start_address}&daddr={destination_address}
現在、JavaScript API の GDirections でサポートしている国を確認するには、このスプレッド シートの「driving directions」列のプルダウン リストで「Yes」を選択してください。ルート案内のデータが提供可能かどうかはデータ プロバイダと Google の契約によって変更される場合があります。
さらに、GDirections.load メソッドの「locale」パラメータを設定すると、GDirections がルート案内の指示を別の言語に翻訳します。上で参照したスプレッド シートの「localized」列には、現在使用可能な言語も示されています。
JavaScript API 内の GGeoXML クラスを使用すると KML/KMZ や GeoRSS ファイルを地図の上に重ね合わせることができます。こちらでその例をご覧ください。
GGeoXML クラスが現在サポートしている KML 機能は次の URL で説明しています。
http://code.google.com/apis/kml/documentation/mapsSupport.html
その他の地理空間機能のサポートは、将来的に GGeoXml クラスに追加されます。ここをチェックするか Google Geo デベロッパー ブログを訪問して、常に新しい情報を入手してください。
GGeoXML クラスを使用して表示できる KML のサイズと複雑度については次の URL をご覧ください。
http://code.google.com/apis/kml/documentation/mapsSupport.html
はい。広告を表示して地図のマッシュアップを収益化することは大いに奨励されています。JavaScript API はGAdsManager クラスを使用する広告レイヤー機能を提供しています。この機能はコンテキストに関連した広告を地図上の特殊な広告レイヤー内に表示します。これらは maps.google.com の検索結果に表示される広告と同じものです。GAdsManager でコンテンツ向け AdSense 運営者 ID を指定すると広告レイヤーが有効になり、広告の情報ウィンドウ内のリンクがクリックされるたびに収益を得ることができます。
また、地図とは関係なく、地図のマッシュアップと同じページに AdSense 広告ユニットを配置することができます。
AdSense にサインアップしてサイト運営者 ID を入手する方法や自分のページに広告ユニットを配置する方法は adsense.google.com をご覧ください。
あなた固有の AdSense サイト運営者 ID を知るには、http://www.google.com/adsense から AdSense アカウントにログインしてください。[アカウント] タブでスクロールし、[プロパティ情報] を選択します。AdSense サービス/機能ごとのサイト運営者 ID がこのセクションに記載されています。
また、AdSense コードを使用してサイト運営者 ID を知ることもできます。ご自分の Web サイトの HTML ソースコードに AdSense コードを挿入すると、次のような文字列内にサイト運営者 ID が特定できます。
google_ad_client="ca-pub-xxxxxxxxxxxxxxxx";
AdSense ヘルプセンター内のチャネルに関する情報をご覧ください。
ページのコンテンツがコンテンツ向け AdSense のいずれかの言語であれば広告レイヤーが実装できます。現時点では、広告レイヤーで広告を表示できるのは米国の広告主に限られています。プログラムの開発とともに、ご利用いただける国を増やしていく予定です。
広告レイヤーを実装時に地図の GAdsManager を初期化したにもかかわらず広告が表示されない場合、いくつかの原因が考えられます。
GAdsManager コンストラクタに指定している ID が有効な AdSense ID であることを確認し、初期化した後には必ず GAdsManager で enable() を呼び出します。
Google AJAX API ローダーで Google Maps API Premier(旧Google Maps Enterprise)クライアント ID を使うには、最初に 共通ローダを Google Maps API Premier キーを使用してロードします。
<script type="text/javascript" src="http://www.google.com/jsapi?key=ABCDEFG"></script>
次に Google Maps JavaScript API をロードするときに Google Maps API Premier クライアント ID を追加パラメータとして指定します。
google.load("maps","2", {"other_params":"client=gme-yourid"});
ABCEFG の部分をキーで置き換え、gme-yourid の部分をクライアント ID で置き換えます。
Google AJAX API ローダーを利用した Google Maps JavaScript API に関する詳しい説明は次の URL をご覧ください。
http://code.google.com/apis/maps/document ation/index.html#AJAX_Loader
https を使用して Google Maps API にアクセスするには、最初に Google Maps API. を使用したい https サイトの Google Maps API Premier サポートチームにご連絡ください。当該サイト用の Google Maps API Premier キーと https を使用して Google Maps API にアクセスする方法が発行されます。