バージョニング

Maps JavaScript API チームは、定期的に API を更新して、新機能を追加したり、バグを修正したり、パフォーマンスを改善したりしています。このページでは、アプリケーションで使用できる API のバージョンについて説明します。

リリース チャンネルとバージョン番号

アプリケーションでは、リリース チャンネルやバージョン番号を指定できます。

  • 週ごとのチャンネルv=weekly で指定します。
    このチャンネルは週に 1 回更新され、最も更新頻度が高くなります。
  • 四半期ごとのチャンネルv=quarterly で指定します。
    このチャンネルは四半期に 1 回更新され、最も変更に対応しやすいと言えます。
  • ベータ版チャンネルv=beta で指定します。
    このチャンネルは weekly チャンネルに基づいており、週に 1 回更新されます。初期段階のテストとフィードバック向けの追加の変更が含まれます。
  • アルファ版チャンネルv=alpha で指定します。
    このチャンネルは beta チャンネルに基づいており、週に 1 回更新されます。これには、プロトタイプに対するお客様のフィードバックのためのテストが含まれます。これは開発専用です。本番環境では使用しないでください。
  • バージョン番号v=n.nn で指定します。
    v=3.58v=3.57v=3.56v=3.55 の中から選択できます。
    バージョン番号は四半期ごとに更新されます(四半期ごとの更新をご覧ください)。

チャンネルやバージョンを明示的に指定しない場合は、デフォルトの週ごとのチャンネルが適用されます。プレミアム プランから移行し、チャンネルやバージョンを明示的に指定しない場合は、デフォルトで四半期ごとのチャンネルが適用されます。無効なバージョンを指定すると、デフォルトのチャンネルが適用されます。

週ごとのチャンネルを選択する

ほとんどのアプリケーションでは、週ごとのチャンネルをおすすめします。最も更新頻度が多く、最も新しいバージョンが適用されるため、最新のバグ修正やパフォーマンスの改善が施されます。次のスクリプトタグで Maps JavaScript API を読み込むと、週ごとのチャンネルを指定できます。

  <script>
    (g=>{var h,a,k,p="The Google Maps JavaScript API",c="google",l="importLibrary",q="__ib__",m=document,b=window;b=b[c]||(b[c]={});var d=b.maps||(b.maps={}),r=new Set,e=new URLSearchParams,u=()=>h||(h=new Promise(async(f,n)=>{await (a=m.createElement("script"));e.set("libraries",[...r]+"");for(k in g)e.set(k.replace(/[A-Z]/g,t=>"_"+t[0].toLowerCase()),g[k]);e.set("callback",c+".maps."+q);a.src=`https://maps.${c}apis.com/maps/api/js?`+e;d[q]=f;a.onerror=()=>h=n(Error(p+" could not load."));a.nonce=m.querySelector("script[nonce]")?.nonce||"";m.head.append(a)}));d[l]?console.warn(p+" only loads once. Ignoring:",g):d[l]=(f,...n)=>r.add(f)&&u().then(()=>d[l](f,...n))})({
      key: "YOUR_API_KEY",
      v: "weekly",
    });
  </script>
  

週ごとのチャンネルの現在のバージョンは 3.58 です。このバージョンでは、新機能の追加、バグの修正、パフォーマンスの改善を含む更新を毎週実施しています。

11 月中旬に、週ごとのチャンネルがバージョン 3.59 に更新されます。このバージョンへの更新時に、サポート対象外となった機能の削除、下位互換性のない変更が行われる場合があります。

四半期ごとのチャンネルを選択する

アプリケーションによっては、影響を予測しやすくなるため、更新頻度が少なくてもメリットを得られる場合があります。そうしたアプリケーションでは、四半期ごとのチャンネルを使用してください。バグの修正やパフォーマンスの改善を、予定した時期に適用したい場合は、この方法を使用します(四半期ごとの更新を参照)。次のスクリプトタグで Maps JavaScript API を読み込むと、四半期ごとのチャンネルを指定できます。

  <script>
  (g=>{var h,a,k,p="The Google Maps JavaScript API",c="google",l="importLibrary",q="__ib__",m=document,b=window;b=b[c]||(b[c]={});var d=b.maps||(b.maps={}),r=new Set,e=new URLSearchParams,u=()=>h||(h=new Promise(async(f,n)=>{await (a=m.createElement("script"));e.set("libraries",[...r]+"");for(k in g)e.set(k.replace(/[A-Z]/g,t=>"_"+t[0].toLowerCase()),g[k]);e.set("callback",c+".maps."+q);a.src=`https://maps.${c}apis.com/maps/api/js?`+e;d[q]=f;a.onerror=()=>h=n(Error(p+" could not load."));a.nonce=m.querySelector("script[nonce]")?.nonce||"";m.head.append(a)}));d[l]?console.warn(p+" only loads once. Ignoring:",g):d[l]=(f,...n)=>r.add(f)&&u().then(()=>d[l](f,...n))})({
    key: "YOUR_API_KEY",
    v: "quarterly",
  });
  </script>

四半期ごとのチャンネルの現在のバージョンは 3.57 です。この四半期中、Google がこのバージョンで、新機能の追加、バグの修正、パフォーマンスの改善を実施することはありません。セキュリティ関連のバグ修正は、随時適用される可能性があります。

11 月中旬に、四半期ごとのチャンネルがバージョン 3.58 に更新されます。このバージョンへの更新時に、新機能の追加、サポート対象外となった機能の削除、過去 3 か月間のバージョンとの下位互換性がない変更が行われる場合があります。

ベータ版チャンネルを選択する

ベータ版チャンネルを使用すると、ベータ版の新機能や変更点を試すことができます。ベータ版機能は不完全ではありませんが、未解決の問題が含まれている可能性があります(Issue Tracker を使用して問題を報告し、フィードバックをお送りください)。ベータ版チャンネルは SLA や非推奨ポリシーの対象ではありません。一部の変更は、以前のリリースとの下位互換性がない場合があります。

このチャンネルは weekly チャンネルに基づいており、週に 1 回更新されます。

ベータ版チャンネルを指定するには、次のスクリプトタグを使用して Maps JavaScript API を読み込みます。

  <script>
  (g=>{var h,a,k,p="The Google Maps JavaScript API",c="google",l="importLibrary",q="__ib__",m=document,b=window;b=b[c]||(b[c]={});var d=b.maps||(b.maps={}),r=new Set,e=new URLSearchParams,u=()=>h||(h=new Promise(async(f,n)=>{await (a=m.createElement("script"));e.set("libraries",[...r]+"");for(k in g)e.set(k.replace(/[A-Z]/g,t=>"_"+t[0].toLowerCase()),g[k]);e.set("callback",c+".maps."+q);a.src=`https://maps.${c}apis.com/maps/api/js?`+e;d[q]=f;a.onerror=()=>h=n(Error(p+" could not load."));a.nonce=m.querySelector("script[nonce]")?.nonce||"";m.head.append(a)}));d[l]?console.warn(p+" only loads once. Ignoring:",g):d[l]=(f,...n)=>r.add(f)&&u().then(()=>d[l](f,...n))})({
    key: "YOUR_API_KEY",
    v: "beta",
  });
  </script>

アルファ版チャンネルを選択する

アルファ版チャンネルを使用して、新しい試験運用版の機能と変更内容をお試しください。Issue Tracker を使用して、問題を報告し、フィードバックをお送りください。アルファ版チャンネルは SLA や非推奨ポリシーの対象ではありません。一部の変更は、以前のリリースとの下位互換性がない場合があります。これは開発専用です。本番環境では使用しないでください。

このチャンネルは beta チャンネルに基づいており、週に 1 回更新されます。

アルファ版チャンネルを指定するには、次のスクリプトタグを使用して Maps JavaScript API を読み込みます。

  <script>
  (g=>{var h,a,k,p="The Google Maps JavaScript API",c="google",l="importLibrary",q="__ib__",m=document,b=window;b=b[c]||(b[c]={});var d=b.maps||(b.maps={}),r=new Set,e=new URLSearchParams,u=()=>h||(h=new Promise(async(f,n)=>{await (a=m.createElement("script"));e.set("libraries",[...r]+"");for(k in g)e.set(k.replace(/[A-Z]/g,t=>"_"+t[0].toLowerCase()),g[k]);e.set("callback",c+".maps."+q);a.src=`https://maps.${c}apis.com/maps/api/js?`+e;d[q]=f;a.onerror=()=>h=n(Error(p+" could not load."));a.nonce=m.querySelector("script[nonce]")?.nonce||"";m.head.append(a)}));d[l]?console.warn(p+" only loads once. Ignoring:",g):d[l]=(f,...n)=>r.add(f)&&u().then(()=>d[l](f,...n))})({
    key: "YOUR_API_KEY",
    v: "alpha",
  });
  </script>

バージョン番号を選択する

アプリケーションを定期的にテストして更新する場合にのみ、バージョン番号を指定します。これは、番号付きのバージョンは、四半期ごとに新しいバージョンが作成され、やがて削除されるためです。バージョン番号を指定するには、次のスクリプトタグを使用して Maps JavaScript API を読み込みます。

  <script>
  (g=>{var h,a,k,p="The Google Maps JavaScript API",c="google",l="importLibrary",q="__ib__",m=document,b=window;b=b[c]||(b[c]={});var d=b.maps||(b.maps={}),r=new Set,e=new URLSearchParams,u=()=>h||(h=new Promise(async(f,n)=>{await (a=m.createElement("script"));e.set("libraries",[...r]+"");for(k in g)e.set(k.replace(/[A-Z]/g,t=>"_"+t[0].toLowerCase()),g[k]);e.set("callback",c+".maps."+q);a.src=`https://maps.${c}apis.com/maps/api/js?`+e;d[q]=f;a.onerror=()=>h=n(Error(p+" could not load."));a.nonce=m.querySelector("script[nonce]")?.nonce||"";m.head.append(a)}));d[l]?console.warn(p+" only loads once. Ignoring:",g):d[l]=(f,...n)=>r.add(f)&&u().then(()=>d[l](f,...n))})({
    key: "YOUR_API_KEY",
    v: 3.57,
  });
  </script>

現在は、v=3.58v=3.57v=3.56、または v=3.55 を指定できます。

  • バージョン 3.58 では、新機能の追加、バグの修正、パフォーマンスの改善を含む更新を毎週実施しています。
  • バージョン 3.57 では、毎週の更新は実施されていません。
  • バージョン 3.56 では、毎週の更新は実施されていません。
  • バージョン 3.55 では、毎週の更新は実施されていません。
  • セキュリティ関連のバグ修正は、どのバージョンにも随時適用される可能性があります。
  • 新しいバージョンを作成する際に、下位互換性のない変更が行われる場合があります。

11 月中旬以降は、v=3.59v=3.58v=3.57、または v=3.56 を指定できます。

  • バージョン 3.59 では、新機能の追加、バグの修正、パフォーマンスの改善を含む更新を毎週実施しています。
  • バージョン 3.58 では、毎週の更新が実施されなくなります。
  • バージョン 3.57 では、毎週の更新が実施されなくなります。
  • バージョン 3.56 では、毎週の更新が実施されなくなります。
  • セキュリティ関連のバグ修正は、どのバージョンにも随時適用される可能性があります。
  • バージョン 3.55 は使用できなくなります。このバージョンを読み込もうとしても無視され、代わりにデフォルト チャンネルが適用されます。

下の図には、今後 1 年間に各チャンネルで利用できるバージョンがまとめられています。

v3.55 v3.56 v3.56 v3.57 v3.57 v3.57 v3.58 v3.58 v3.58 v3.58 v3.59 v3.59 v3.59 v3.60 v3.60 v3.61

更新によってアプリケーションに影響が生じた場合

リリース チャンネルを更新すると、アプリケーションに影響する可能性があります。これは、アプリケーションが文書化されていない機能や非推奨の機能に依存していることか、バグやバグ修正が導入されたことが原因になっている可能性があります。

一時的な回避策として、古いバージョンを使用するようにアプリケーションを再構成できます。

  1. ブラウザのデベロッパー ツールでコンソールを開き、google.maps.version の値を確認します。
  2. API を読み込むスクリプトタグを更新し、古いバージョン番号をリクエストします。
    たとえば、google.maps.version が「3.58.2」の場合は、スクリプトタグで v=3.57 を使用します。
    この一時的な回避策は期間限定で有効です。

一時的な回避策を適用したら、一定期間内(通常は 3~6 か月)にアプリケーションを更新し、文書化されていない機能やサポート終了の機能を削除したり、バグやバグ修正に対応したりしてください。

API を読み込むには、元のスクリプトタグに戻す必要があります。

サポートケースを作成したり、問題を報告したりすることもできます。

四半期ごとの更新

四半期に 1 回、Maps JavaScript API チームが新しいバージョンをリリースします。リリースは、2 月中旬、5 月中旬、8 月中旬、11 月中旬に行われます。次回のリリースは 11 月中旬です。新しい週ごとのチャンネルで提供されるバージョンは 3.59 となります。そこで他のチャンネルも更新されます。

週ごとのチャンネルの更新

週ごとのチャンネルで現在指定されているバージョンは 3.58 です。

11 月中旬に、週ごとのチャンネルはバージョン 3.58 からバージョン 3.59 に更新されます。このバージョンへの更新時に、新機能の追加、サポート対象外となった機能の削除、過去 3 か月間のバージョンとの下位互換性がない変更が行われる場合があります。チャンネルの更新時には、こういった変更のテストが必要となることがあります。

四半期中に新しいバージョンがリリースされ、新機能の追加、バグの修正、パフォーマンス改善が行われます。サポート対象外となった機能が削除されることも、下位互換性のない変更が行われることもありません。

四半期ごとのチャンネルの更新

四半期ごとのチャンネルで現在指定されているバージョンは 3.57 です。

11 月中旬に、四半期ごとのチャンネルはバージョン 3.57 からバージョン 3.58 に更新されます。このバージョンへの更新時に、新機能の追加、サポート対象外となった機能の削除、過去 3 か月間のバージョンとの下位互換性がない変更が行われる場合があります。チャンネルの更新時には、こういった変更のテストが必要となることがあります。

四半期中は、このバージョンに新機能の追加やバグの修正、パフォーマンス改善が行われることはありません。サポート対象外となった機能が削除されることも、下位互換性のない変更が行われることもありません。

バージョンの更新

11 月中旬に、新しいバージョンのリリースに合わせてバージョン番号がロールオーバーされます。

バージョン 3.59

新バージョンであるバージョン 3.59 が 11 月中旬にリリースされます。 このバージョンでは、リリース時に新機能の追加、サポート対象外となった機能の削除、バージョン 3.58 との下位互換性がない変更が行われる場合があります。異なるバージョン番号に変更する際は、アプリケーションをテストしてください。

四半期中、新しいバージョンは毎週更新され、新機能の追加やバグ修正、パフォーマンス改善が施されます。サポートが終了した機能が削除されることも、下位互換性のない変更が行われることもありません。

バージョン 3.58

このバージョンに更新すると、新機能の追加、サポート対象外となった機能の削除、バージョン 3.57 との下位互換性がない変更が行われる場合があります。異なるバージョン番号に変更する際は、アプリケーションをテストしてください。

11 月中旬以降、このバージョンで新機能の追加、バグの修正、パフォーマンスの改善を含む更新が実施されることはありません。サポートが終了した機能が削除されることも、下位互換性のない変更が行われることもありません。

バージョン 3.57

このバージョンに更新すると、新機能の追加、サポート対象外となった機能の削除、バージョン 3.56 との下位互換性がない変更が行われる場合があります。異なるバージョン番号に変更する際は、アプリケーションをテストしてください。

今後、このバージョンで新機能の追加、バグの修正、パフォーマンスの改善が実施されることはありません。このバージョン以降にサポートが終了した機能が削除されることも、下位互換性のない変更が行われることもありません。

バージョン 3.56

このバージョンに更新すると、新機能の追加、サポート対象外となった機能の削除、バージョン 3.55 との下位互換性がない変更が行われる場合があります。異なるバージョン番号に変更する際は、アプリケーションをテストしてください。

今後、このバージョンで新機能の追加、バグの修正、パフォーマンスの改善が実施されることはありません。このバージョン以降にサポートが終了した機能が削除されることも、下位互換性のない変更が行われることもありません。

バージョン 3.55

11 月中旬以降、このバージョンは削除され、利用できなくなります。 このバージョンを読み込もうとしても無視され、代わりにデフォルト チャンネルが適用されます。

バージョン サポート

四半期ごとに 4 つのバージョンが用意されます。これらの 4 つのバージョンはすべてサポート対象です。

バージョン チェック

デバッグを行うには、google.maps.version プロパティを使用して、アプリケーションの Maps JavaScript API の現在のバージョンを取得します。次のサンプルコードは、ブラウザのコンソールに API のバージョンを書き込みます(ブラウザ コンソールの詳細については、ブラウザでのエラーの確認に関するガイドをご覧ください)。

<!DOCTYPE html>
<html>
  <head>
    <title>Display Google Maps API Version</title>
  </head>
  <body>
    <script>
      function initMap() {
        // Add your map here.
        console.log('Google Maps API version: ' + google.maps.version);
      }
    </script>
    <script src="https://maps.googleapis.com/maps/api/js?key=YOUR_API_KEY&callback=initMap"
    defer></script>
  </body>
</html>

各 API バージョンのドキュメント

デベロッパー ガイドには、週ごとのバージョンが記載されています。

これに加えて、各バージョン別のリファレンスを、以下からご確認いただけます。