常見問題

開始使用

瞭解服務條款

使用限制與計費方式

使用 Google Maps APIs

Google Maps APIs 服務

Google Maps SDK for iOS

開始使用

Google Maps APIs 是什麼?

Google Maps APIs 提供開發人員數個將「Google 地圖」內嵌到網頁上或從「Google 地圖」接收資料的方法,並能提供簡易的使用方式,或是詳盡的自訂選項。API 有數種:

Web API:

Web 服務 API:

行動裝置 API:

根據您的需求,您可能會用到上面其中一種 API,或是這些 API 的組合。

如果您是運作企業或商業網站,您可能會對 Google Maps APIs Premium Plan 有興趣。

我需要哪個 API?

如需根據您的功能需求找到正確 API 的協助,請參閱 API 挑選器

Google Maps APIs 涵蓋哪些國家?

「Google 地圖」團隊正持續推出新的地圖資料,並提升國際涵蓋範圍。請參閱 「Google 地圖」涵蓋範圍資料以取得最新的涵蓋範圍資訊。您可以使用頁面最上方的篩選方塊來篩選資料。請注意,涵蓋範圍資料可能會隨我們與資料提供者之間授權合約的變更而產生變更。

另請參閱:

不使用 Google Maps APIs 的話,我是否可以在網站上加入「Google 地圖」?

是。Google 地圖現已提供將正在檢視的地圖內嵌至您的網站或部落格的方法,而不需要任何程式設計方法或使用 Google Maps APIs。如需詳細資訊,請參閱這裡

如何在行動裝置上發佈「地圖」應用程式?

如果要將地圖納入 Android 應用程式,請使用 Google Maps Android API

如果要將地圖納入原生的 iOS 應用程式,請使用 Google Maps SDK for iOS

Google Maps JavaScript API 已針對行動裝置的需求進行開發,並適合針對包括擁有完整 JavaScript 實作之網頁瀏覽器的電腦與裝置的瀏覽器應用程式 (例如 Apple iPhone) 使用

對於針對不適合使用 JavaScript API 之裝置的應用程式而言,Google Static Maps API 能以 GIF、JPG 與 PNG 格式提供地圖影像,包括標記與折線。請注意,如果要在以瀏覽器為基礎的應用程式之外的環境使用 Google Static Maps API,便需要使該地圖影像與「Google 地圖」連結。

是否可以從 JavaScript API 列印地圖?

不支援從 JavascriptAPI 列印。因為常用的瀏覽器之間的列印支援並不一致。我們建議使用 Static Maps API 來進行列印。

如何在我的網站上開始使用 Google Maps APIs?

請參閱 Maps Javascript API 文件以取得範例與詳細資料。

Google Maps APIs 有變更時,我該如何獲得通知?

您應該訂閱 Google Geo Developers Blog 以取得各種提供給 Google Geo 開發人員之項目的新聞與更新。

瞭解服務條款

Google Maps APIs 服務條款有哪些?

Google Maps APIs 服務條款可於下列位置取得:

https://developers.google.com/maps/terms

如果您是 Google Maps APIs Premium Plan 客戶,請參閱您的合約以瞭解約束您的 Google Maps APIs 使用方式的條款。

我的網站是否符合 Google Maps APIs 的服務條款?

Maps API 可提供給允許消費者免費存取的所有網站使用。您可以在商業網站或非營利網站上使用 Google Maps APIs,前提是您的網站符合服務條款

不過,有些 Google Maps APIs 的使用情形是我們不樂見的,例如顯示在城市內購買非法藥品之位置的地圖,或是牽涉到任何其他非法活動。我們也非常尊重人們的隱私,因此 Google Maps APIs 不應該被用於顯示個人的私人資訊上。

您應該在開發並推出應用程式之前,先自行判斷您的應用程式是否符合服務條款。Google 工程師只能提供技術性協助,並不具備提供法律諮詢的資格。Google 保留隨時中止或終止您使用服務的權利,因此請務必仔細閱讀服務條款

如果您是運作企業或商業網站,您可能會對 Google Maps APIs Premium Plan 有興趣,它提供一份可能更適合您需求的修改版本使用條款

是否可以直接存取地圖和衛星影像?

您將無法透過 Google Maps APIs 之外的任何機制(例如自行建立地圖 API 或使用地圖方塊大量下載指令碼)存取地圖或衛星影像。如果您的應用程式在 Google Maps APIs 以外的環境存取地圖方塊,其存取便會受到封鎖。請參閱「Google 地圖」服務條款第 10.1.a 節以取得更多詳細資料。

是否可以在商業網站上使用 Google Maps APIs?

只要您的網站基本上是免費供消費者存取,便可以使用 Google Maps APIs。例如,如果您的網站是由廣告所支援,它便大概符合 Google Maps APIs 服務條款所定義的條件。如果您對想在您的地圖上放置資訊的人們收費(例如刊登要出售的房子),但是在您網站上的免費區塊使用 Google Maps APIs 顯示此資訊,則您也符合 Google Maps APIs 服務條款

然而,並非所有商業用途都是受到允許的。例如,如果您的網站符合下列任何一個條件,便必須購買適當的 Google Maps APIs Premium Plan 授權:

  • 您的網站僅供付費客戶使用。
  • 您的網站只能在您的公司內部,或是透過您的內部網路存取。
  • 您的應用程式與企業分派、車隊管理、商業資產追蹤或類似的應用有關。

請記住,Google 保留隨時中止或終止您使用 Google Maps APIs的權利,因此請確定您已仔細閱讀服務條款

是否可以針對追蹤應用程式使用 Google Maps APIs?

只要應用程式為免費提供大眾存取並符合「服務條款」,我們並沒有針對使用 Google Maps APIs 顯示即時資料(追蹤)設定任何限制。針對僅限內部存取的應用程式,您必須使用 Google Maps APIs Premium Plan。請參閱「服務條款」的第 10.4 節以取得更多資訊。

是否可以在非 Web 應用程式中使用「Google 地圖」?

是。Google Maps APIs 現已可以在電腦應用程式中使用,前提是它們必須遵守「服務條款」的其他限制。請注意,如果要使電腦應用程式符合「可供大眾存取」的條件,必須要有可供大眾存取並下載該應用程式的網頁。請參閱「服務條款」的第 9.1 節以取得更多資訊。

Google Maps JavaScript API 只有在其中一個支援的瀏覽器中,才會受到支援。

是否可以在受密碼保護的網站上使用 Google Maps APIs?

是,不過在受密碼保護的網站上使用 Google Maps APIs 之前,您應該先參閱服務條款。如果消費者可以輕易地免費註冊並取得密碼,或是以密碼保護地圖的目的是為了提升可供大眾使用的地圖(換句話說,基於管理目的),則您的網站便大概符合「服務條款」所定義的條件。如果情況並非如此,那麼您必須使用 Google Maps APIs Premium Plan

是否可以在印刷品或離線媒體中使用 Google Maps APIs 應用程式的螢幕擷取畫面?

在印刷品與離線媒體上使用「Google 地圖」影像,必須受到發佈於下列位置的「權限指導方針」所約束:

http://www.google.com/permissions/geoguidelines.html

如需有關列印的詳細資訊,請參閱是否可以從 JavaScript API 列印地圖?

我要如何選擇不將我的內容包括在 Google 搜尋結果中?

我們已不再收集此資料。indexing 參數的使用已經過時,並且不具任何效果。您已不再需要明確地選擇退出,但我們建議您儘早將此參數移除。

如果要將您的網頁或網站從搜尋結果中移除,請依照網站管理員說明中心所提供的指示進行。

如果您使用的是具有 Google Maps APIs Premium Plan 授權的「用戶端編號」,則可以使用下列選項,將地圖上顯示之 Google 標誌的連結移除。此選項的使用僅限於標誌連結會造成使用者負面體驗的情況。(例如,使用全螢幕檢視的行動應用程式,使用者點擊標誌會離開該應用程式的原始內容,卻又沒有任何方法返回。)您務必確認標誌與版權聲明沒有隱藏或遭到覆蓋。

map.setOptions({passiveLogo: true});

標誌保持可見,但無法點擊。

對於所有使用用戶端編號的 Premium Plan 客戶,此選項預設為可用。如果無法運作,請聯絡 Premium Plan 支援

當我使用 Maps JavaScript API 時,會傳送什麼資訊給 Google?

使用 Maps JavaScript API 時,下列資訊會傳送給 Google:

  • 用來擷取地圖方塊與著作權的地圖的大小與位置
  • 用來進行地理編碼的地址
  • 方向與海拔要求
  • 搜尋地方資訊的位置
  • KML(使用 KmlLayer 時)
我是否可以使用儲存在我的網站上,並由我的網站所提供的 Google Static Maps API 來產生地圖影像?

您不可以在您的網站上儲存並提供使用 Google Static Maps API 產生之影像的複本。所有需要靜態影像的網頁都必須直接將 HTML img 標籤的 src 屬性,或是 HTML div 標籤的 CSS background-image 屬性直接連結至 Google Static Maps API,以便所有地圖影像都會顯示在網頁的 HTML 內容之中,並由 Google 直接提供給使用者。

使用限制與計費方式

哪些 Google Maps APIs 有使用限制?

Google Maps APIs 完全免費,適用於多種使用案例,不但針對標準 API 的使用提供特定額度免費的使用限制及可預測的超額定價,更為企業部署作業提供年度合約方案

下列 API 沒有使用限制:

使用限制適用於下列 Maps API。按一下 API 以檢視其使用限制詳細資料:

Maps API 的部署必須遵守標準服務條款

Google Maps APIs 有哪些使用限制?

大多數的 Google Maps APIs 都有可以在 Google API Console 中設定的免費每日配額。每日的預設與最大查詢數目會因 API 而有所不同。您可以透過啟用計費功能或購買 Google Maps APIs Premium Plan 授權來提高免費每日限制。

  • Web 服務 API:

    Google 地圖 Web 服務 API 包括每天 2,500 個免費要求,以用戶端要求(透過 Google Maps JavaScript API 服務進行)與伺服器端要求的加總計算。如果要存取更多的每日配額 (最多每天 100,000 個),我們提供即付即用的定價

    以選擇加入即付即用。

  • Web API:

    Google Maps JavaScript API、Google Static Maps API 和 Google Street View Image API 都有 25,000地圖載入的免費每日限制。如果要存取更多的每日配額 (最多每天 100,000 個),我們提供即付即用的定價

    如果您的網站超過一天 25,000 個地圖載入次數上限,API 在當天的剩餘時間都不會運作,除非您啟用計費功能來支付額外用量。

    在特定實例中,可能適用配額例外。深入了解

請參考下列針對指定問題的明確定義:

注意:被視為具有公共利益的應用程式 (由 Google 自行裁量)不受限於這些使用限制。例如:

  • 救災地圖即使是由商業實體開發和/或主控,也不受限於這些使用限制。危機應變組織可以申請增加配額限制。深入了解及申請
  • 需要擴展 Google Maps APIs 的地理編碼限制,或是將其做為內部使用的非營利合法組織,可以透過 Google Earth Outreach 補助計劃申請 Google Maps APIs Premium Plan 授權。
  • 使用標準方案的合格新聞媒體組織可以申請增加配額限制。深入了解及申請

配額使用量如何計算?

配額使用量的計算方式因 API 而異。Web 服務 API 使用要求數(請注意,Google Maps Distance Matrix API 使用元素數)。Web API 使用地圖載入數計算配額使用量。

針對 Google Maps Distance Matrix API,每個查詢可傳送至 API 的元素數目有限,「起點」數目乘以「目的地」數目便能定義元素數目。

限制 Google Maps APIs Web 服務使用量的配額有兩種:長期(每日配額)與短期(要求速率配額)。不論是伺服器端(透過 Maps Web Services API)或用戶端(透過 DirectionsDistance MatrixElevationGeocoding 的 JavaScript 服務)所做的要求,都適用這些使用限制。

注意:API 上也可能會設定其他限制。例如,Elevation API 中針對每個要求的位置數目限制。而且,除了每日配額之外,影像 API 也包括最大影像解析度的限制。請檢視每個 Google Maps APIs 的使用限制頁面以取得詳細資料。

Google Maps APIs for Web 的使用限制如何影響地圖載入的計算?

發生下列任一情況時,就是一次地圖載入並收費:

  • 網頁或應用程式使用 Google Maps JavaScript API 顯示地圖。
  • 網頁或應用程式使用 Google Maps JavaScript API 顯示 Google Street View Image API 全景。如果「街景服務」全景以相同 div 元素取代地圖,該全景不會收費。
  • 應用程式從 Google Static Maps API 要求單一地圖影像。
  • 應用程式從 Google Street View Image API 要求單一全景影像。

當網頁或應用程式載入地圖、靜態地圖影像或「街景服務」全景之後,與之發生的所有使用者互動 (例如移動瀏覽、縮放或切換地圖圖層) 並不會產生額外的地圖載入,也不會影響使用限制。

Maps APIs Credits 方面而言,Google Maps APIs Premium Plan 應用程式取用了配額。如需詳細資訊,請參閱 Premium Plan使用費用與限制

如何監視配額使用量?

您可以在 Google API Console 中監視個別 API 的配額使用量。

  1. 選取包含您要檢閱之 API 的專案。
  2. 從 [Dashboard] 上的 API 清單,按一下 API 名稱。
  3. 在接近頁面最上方的地方,按一下 [Quotas] 或 [Usage]

注意:如果要查看整個專案的流量報告與計費資訊,請先啟用計費功能

如果超過使用限制,會發生什麼情況?

如果您超過指定 Maps API 的使用限制,API 將傳回錯誤訊息。如果您不斷超出使用量上限,系統可能會封鎖您對 API 的存取權。

  • Web 服務 API

    針對 Google Maps APIs Web 服務,有兩種限制使用量的配額:長期(每日配額)與短期(要求速率配額)。如果您超出使用限制或以其他方式濫用服務,Web 服務將會傳回特定錯誤訊息。如果您繼續超出限制的用量,系統可能會封鎖您對 Web 服務的存取權。

    使您超過 Google Maps APIs Web 服務使用限制的可能原因如下:

    • 每天傳送太多要求。
    • 傳送要求的速度太快,換句話說,便是每秒傳送太多要求。
    • 長時間以過快的速度傳送要求,或是濫用 Web 服務。
    • 超出其他使用限制,例如 Elevation API 中每個要求的位置數目限制。

    注意:有四個 Web 服務 API 在 JavaScript API 中提供同等的用戶端服務:DirectionsDistance MatrixElevationGeocoding

    包括長期與短期,所有使用限制都由服務所共用,不論要求是用戶端或伺服器端所做的都一樣。例如,Web 服務的免費每日配額是設定為每日 2,500 個要求,由用戶端服務與伺服器端要求共用。如果您使用 JavaScript API Directions 服務每天做 1,500 個要求,也使用伺服器端 Google Maps Directions API 每天做 2,000 個要求,那麼一天內就有 3,500 個 Directions 要求,超過 1,000 個要求的免費每日配額。

  • Web API

    Web API 是 Google Maps JavaScript API v3、Google Static Maps API 和 Google Street View Image API,每一個都有 25,000 次地圖載入的每日免費限制。

    對於某些客戶,可能適用配額例外。深入了解

超出使用限制

如果您超出使用限制,便會收到 OVER_QUERY_LIMIT 狀態碼做為回應。

這表示 Web 服務將會停止提供標準回應,並切換為只傳回 OVER_QUERY_LIMIT 狀態碼,直到有更多用量可以使用。這可能會在下列情況發生:

  • 如果該錯誤是因為您的應用程式每秒傳送太多要求而產生,便會在幾秒之內發生。
  • 如果該錯誤是因為您的應用程式每天傳送太多要求而產生,便會在接下來的 24 小時內發生。每日配額將在太平洋時間的午夜重設。

如果您經常超出每日使用限制,請考慮:

我的網站流量很大。是否可以使用 Maps API?

是。然而,我們建議您先熟悉您的應用程式所依賴之任何 Google Maps APIs 的使用限制

我是否應該購買 Google Maps APIs Premium Plan?

如果您的公司或機構有下列任一需求,建議您購買 Google Maps APIs Premium Plan:

  • 提供 24 小時技術支援的服務水準協議 (SLA)
  • 銷售具有內嵌「Google 地圖」之產品或服務的能力
  • 針對內部應用程式或網站使用 Google Maps APIs 的能力
  • 特定數目的配額
  • 針對資產追蹤應用程式使用 Google Maps APIs (不包括 Places API)的能力
  • 您現有的 Maps APIs for Work 授權提供 Premium Plan 功能

如何購買 Google Maps APIs Premium Plan?

聯絡 Google 業務代表以取得購買 Google Maps APIs Premium Plan 的詳細資料,並根據您應用程式的使用量取得估價。

  • Web 服務 API

    如果您使用的是 Web 服務 API,我們提供每天 2,500 個免費要求,以用戶端要求(透過 Google Maps JavaScript API 服務進行)與伺服器端要求的加總計算。如果您超出免費配額,只要您啟用自動計費功能,便可以使用即付即用功能取得每天最多 100,000 個要求的配額。

  • Web API

    如果您使用的是 Google Maps Web API (Maps JavaScript API、Static Maps API 或 Street View Image API),我們提供每天 25,000 次免費地圖載入。如果您超出免費配額,只要您啟用自動計費功能,便可以使用即付即用功能取得每天最多 100,000 次地圖載入的配額。

    在特定實例中,可能適用配額例外。深入了解

如果您超過免費每日配額,而計費功能也啟用,那麼 API 在當天剩餘時間會停止運作。

額外用量的計算與計價方式為何?

針對每個 Maps API 服務超過免費配額的額外用量,將會在每天結束時計算。

  • Web 服務 API

    Web 服務 API 提供每天 2,500 個免費要求,以用戶端要求(透過 Google Maps JavaScript API 服務進行)與伺服器端要求的總和計算。如果您啟用計費功能以使用更高的配額,當您一天超過 2,500 個要求時,我們會以每 1,000 個額外要求 $0.50 美元向您收費,而每天的要求上限則為 100,000 個。

  • Web API

    Google Maps Web API (Maps JavaScript API、Static Maps API 或 Street View Image API)提供每天 25,000 次免費地圖載入。如果您啟用計費功能以使用更高的配額,當您一天超過 25,000 次地圖載入時,我們會以每 1,000 次地圖載入 $0.50 美元向您收費,而每天的地圖載入上限則為 100,000 次。

    在特定實例中,可能適用配額例外。深入了解

深入瞭解超過使用限制會發生的情況

如果您選擇啟用計費功能,則必須提供信用卡詳細資料。您的額外用量將會持續於每天結束時計算,向信用卡收費的總額將會在每個月月底提供,定價於下方提供。

使用 Google Maps APIs 的花費是多少?

產生低於使用限制之要求或地圖載入量的應用程式,只要符合 Google Maps APIs 服務條款需求,便可以免費使用 Google Maps APIs。

針對 Web 服務 API,如果您的 Maps API 服務超出每日使用限制,而您選擇使用 Google API Console 於線上購買額外配額,則我們將會根據您的額外用量以下列相關服務的價格向您收費。每日使用量是依據專案來追蹤,並且是以用戶端要求(透過 Google Maps JavaScript API 服務進行)與伺服器端要求的總和計算。

針對 Google Maps JavaScript API v3、Google Static Maps API 與 Google Street View Image API,如果您超出 Maps API 服務的每日使用限制,而您選擇使用 Google API Console 於線上購買額外地圖載入數,則我們將會根據您的額外用量以下列相關服務的價格向您收費。每日使用量是依據專案來追蹤。

請注意,如果您的網站持續每天產生大量的要求或地圖載入數,則 Google Maps APIs Premium Plan 授權可能會更加划算。我們建議您聯絡 Google Maps APIs Premium Plan 業務團隊以取得更多資訊。

Web 服務 API 免費限制
(每日)
1000 個額外要求
(以美金計價)
Directions API + Directions 用戶端服務 2,500 2 $0.50
Distance Matrix API + Distance Matrix 用戶端服務 1 2,500 2 $0.50
Elevation API + Elevation 用戶端服務 2,500 2 $0.50
Geocoding API + Geocoding 用戶端服務 2,500 2 $0.50
Geolocation API 2,500 $0.50
Roads API 2,500 $0.50
Time Zone API 2,500 $0.50
1 Google Maps Distance Matrix API 與 Distance Matrix 用戶端服務使用量是依據每日的元素量來計算。
2 免費每日配額是以用戶端要求(透過 Google Maps JavaScript API 服務進行)與伺服器端要求的加總計算。
Web API 免費限制
(每日)
1000 個額外地圖載入
(以美金計價)
Google Maps JavaScript API 25,000* $0.50
Google Static Maps API 25,000* $0.50
Google Street View Image API 25,000* $0.50
* 可能適用配額例外。深入了解

請注意,於線上購買額外配額除了根據現有服務條款授予繼續使用 Google Maps APIs 的權利之外,將不會授予任何其他權利或好處。

是否有以其他貨幣計價的定價?

目前僅提供美金的訂價。

我已經啟用了計費功能。該如何查看帳單?

Google 會在每個月的月初以您指定的付款方式向您收取上個月的活動費用。

如果我的使用量在未預期的情況下提高,該如何避免費用大幅增加?

Google Maps APIs 提供了免費的每日配額,對每日費用也設有上限。您可以設定每日使用量上限,防止使用量意外增加。您也可以設定計費警示,以在計費帳戶上的收費達到設定的臨界值時收到電子郵件通知。

限制最大的每日可計費限制:

  • 針對 Web 服務 API:

    標準的 Web 服務 API 每天最多支援 100,000 個要求或元素。除非您針對專案啟用計費功能,否則該專案每天將被限制在贈送的 2,500 個要求上限。啟用計費之後,如果您一天超過 2,500 個要求,我們會以每 1,000 個額外要求 $0.50 美元向您收費,而每天的要求上限則為 100,000 個。請注意,使用量是以用戶端要求(透過 Google Maps JavaScript API 服務進行)與伺服器端要求的總和計算。

    如果要避免高額的帳單,您可以設定每日使用量上限,防止使用量意外增加。目前,可計費限制預設為每天最多 100,000 個要求。您可以在 Google API Console變更此限制。在 API 的 [Quotas] 頁面上,按一下「requests per day」 配額旁邊的編輯圖示

    注意:如果您的 API 使用量在任何一天達到可計費限制,您的應用程式在當天接下來的時間將無法存取 API。深入瞭解超過使用限制會發生的情況

  • 針對 Web API:

    針對 Google Maps JavaScript API v3Google Static Maps APIGoogle Street View Image API,如果使用標準 Google Maps Web API 會超過免費使用限制,您可以透過在專案上啟用計費功能,以在線上購買額外的地圖載入量。啟用計費之後,如果您超過免費使用限制,我們會以每 1000 個額外要求 $0.50 美元向您收費,而每天的要求上限則為 100,000 個。

    如果要避免高額的帳單,您可以設定每日使用量上限,防止使用量於計費功能開始後意外增加。目前,可計費限制預設為每天最多 100,000 個要求。您可以在 Google API Console變更此限制。在 API 的 [Quotas] 頁面上,按一下「requests per day」 配額旁邊的編輯圖示

    注意:如果您的 API 使用量在任何一天達到可計費限制,您的應用程式在當天接下來的時間將無法存取 API。深入瞭解超過使用限制會發生的情況

    注意:對於某些客戶,可能適用配額例外。深入了解

設定及管理計費警示:

設定計費警示以在計費帳戶上的收費達到設定的臨界值時,向計費系統管理員傳送電子郵件通知。計費系統管理員將會在計費帳戶上的預估收費超過臨界值的 50%、90% 與 100% 時收到電子郵件通知。

建議:如果您的網站持續每天產生大量的要求或地圖載入數,則 Google Maps APIs Premium Plan 授權可能會更加划算。我們建議您聯絡 Google Maps APIs Premium Plan 業務團隊以取得更多資訊。

啟用計費功能

為協助您針對 Google Maps API 啟用計費功能並解鎖以獲得較高的配額,我們將引導您使用 Google Developers Console 來完成一些工作:

  1. 建立或選擇專案
  2. 設定或選擇計費設定檔
  3. 在您的專案上啟用計費功能
繼續

使用 Google Maps APIs

針對不同的「地圖」產品,我該使用何種金鑰或認證?

每當您使用 Google Maps APIs 時,都必須包括一個金鑰或其他認證,以驗證您的要求。Google Maps APIs 適用於 Android、iOS 或 Web 應用程式,而且可以透過 HTTP Web 服務使用。需要的認證類型視 API 而定,無論您擁有的是標準或進階授權。

本節資訊適用於標準方案客戶和擁有新版 Google Maps APIs Premium Plan2016 年 1 月推出)的客戶。如果您有舊版 Maps APIs for Work 或 Maps API for Business 授權,您所需的憑證可能與以下所列的不同。

  • API 金鑰:API 金鑰是您使用 Google API Console 產生的唯一識別碼。API 金鑰通常是搭配標準 API 使用。 Premium Plan 客戶1通常可以選擇使用用戶端編號或 API 金鑰。

    您可以選擇使用未套用限制的 API 金鑰(稱為「一般 API 金鑰」),或安全性更高的已套用限制金鑰。任何平台中的 API 都能使用一般 API 金鑰。

    您可以選擇性地新增限制(例如 IP 位址)到 API 金鑰。完成限制之後,金鑰就只能在支援該限制類型的平台上執行。API 金鑰限制有四種類型:

    • 伺服器限制(依 IP 位址)- 用於 Web 服務 API
    • 瀏覽器限制(依 HTTP 參照網址)- 用於 Web API
    • Android 應用程式限制(依套件名稱和指紋)- 用於 Android API
    • iOS 應用程式限制(依 iOS 套件組合識別碼)- 用於 iOS API

    相同平台中的 API 可以使用相同的限制金鑰。

    Google Maps APIs Premium Plan 和 Google Maps APIs for Work 客戶,請注意:在 Google API Console 上產生金鑰時,必須選取您在註冊時為您產生的專案。專案名稱會以 Google Maps APIs for Business or Google Maps for Work or Google Maps 做為開頭。

    使用金鑰載入 API 的範例為:&key=AIzaSyBjsINSH5x39Ks6c0_CoS1yr1Mb3cB3cVo

  • 用戶端 ID:用戶端編號是在您註冊為 Google Maps APIs Premium Plan 或 Google Maps APIs for Work 客戶時提供給您。Premium Plan 客戶通常可以選擇使用用戶端編號或 API 金鑰。

    使用用戶端 ID 載入 API 的範例為:&client=gme-companyname

  • 數位簽章:一般而言,Google Maps APIs Premium Plan 和 Google Maps APIs for Work 客戶在使用用戶端編號驗證時,會使用數位簽章。數位簽章必須使用由 Google 提供給您的密碼編譯金鑰產生。此外,數位簽章是搭配 Google Static Maps API 和 Google Street View Image API 使用。如果您使用的是標準 Google Static Maps API 和 Google Street View Image API,而且已啟用計費功能,那麼超過每日免費配額的地圖載入就必須使用數位簽章。

下列表格指出應該與每個 Maps API 產品搭配使用的金鑰/認證。(如上所述,API 金鑰限制的類型為:伺服器、瀏覽器、Android、iOS。)

API 標準 API 使用者 Premium Plan 使用者1
Google Maps Android API Android 限制 API 金鑰2 Android 限制 API 金鑰2
Google Places API for Android Android 限制 API 金鑰2 無法使用
Google Maps SDK for iOS iOS 限制 API 金鑰2 iOS 限制 API 金鑰2
Google Places API for iOS iOS 限制 API 金鑰2 無法使用
Google Maps JavaScript API 瀏覽器限制 API 金鑰2 瀏覽器限制 API 金鑰2

用戶端編號
Google Static Maps API 瀏覽器限制 API 金鑰2 + 選擇性3數位簽章 瀏覽器限制 API 金鑰2 + 數位簽章

用戶端編號 + 數位簽章
Google Street View Image API 瀏覽器限制 API 金鑰2 + 選擇性2數位簽章 瀏覽器限制 API 金鑰2 + 數位簽章

用戶端編號 + 數位簽章
Google Maps Embed API 瀏覽器限制 API 金鑰2 無法使用
Google Maps Directions API 伺服器限制 API 金鑰2 伺服器限制 API 金鑰2

用戶端編號 + 數位簽章
Google Maps Distance Matrix API 伺服器限制 API 金鑰2 伺服器限制 API 金鑰2

用戶端編號 + 數位簽章
Google Maps Elevation API 伺服器限制 API 金鑰2 伺服器限制 API 金鑰2

用戶端編號 + 數位簽章
Google Maps Geocoding API 伺服器限制 API 金鑰2 伺服器限制 API 金鑰2

用戶端編號 + 數位簽章
Google Maps Geolocation API 伺服器限制 API 金鑰2 伺服器限制 API 金鑰2
Google Maps Roads API 伺服器限制 API 金鑰2 伺服器限制 API 金鑰2
Google Maps Time Zone API 伺服器限制 API 金鑰2 伺服器限制 API 金鑰2

用戶端編號 + 數位簽章
Google Places API Web Service 伺服器限制 API 金鑰2 伺服器限制 API 金鑰2
1 Premium Plan 參照新版 Google Maps APIs Premium Plan2016 年 1 月推出)。如果您有舊版 Maps APIs for Work 或 Maps API for Business 授權,您所需的憑證可能與以上所列的不同。不確定您購買的是哪個方案嗎?了解如何檢查您的授權類型
2 在開發與原型設計過程中,您可以使用一般 API 金鑰(沒有限制的金鑰)搭配任何 Maps 或 Places API。在生產環境中使用 API 金鑰之前,建議您透過限制來確保 API 金鑰安全。深入了解安全地使用 API 金鑰的最佳做法
3 對於 Google Static Maps API 和 Google Street View Image API,當您使用的是標準 API 啟用計費功能時,如果超過 25,000 次地圖載入的免費每日配額,那麼任何收費的地圖載入就必須使用數位簽章
如何將我的金鑰限制類型從瀏覽器限制切換為伺服器限制?

重要:如果您使用的是帶參照網址限制 API 金鑰的 Web 服務 API,您的要求將會失敗,並附上錯誤訊息:"API keys cannot have referer restrictions when used with this API."您應該切換為使用伺服器限制。

在您將 API 金鑰限制類型從「瀏覽器」切換為「伺服器」之前,請確認所有使用 API 金鑰的 API 都是 Web 服務 API。相同平台中的 API 可以使用相同的限制金鑰。如果您必須滿足多個平台的需求,請新增具有必要平台限制的個別金鑰。請參閱如何新增新 API 金鑰

要將瀏覽器限制 API 金鑰切換為伺服器限制的金鑰,請執行以下操作:

  1. 前往 Google API Console 的 [Credentials] 頁面。
  2. 選取您要編輯的包含 API 金鑰之專案。
  3. 在 [Credentials] 頁面上的 API 金鑰清單中,選取 API 金鑰名稱,以編輯金鑰詳細資料。
  4. 在頁面的 [Restrictions] 區段中,選取 [IP addresses (web servers, cron jobs, etc.)] 並插入適當的伺服器 IP 位址,然後按一下 [Save]。
如何取得新 API 金鑰?

要建立新 API 金鑰,請執行以下操作:

  1. 前往 Google API Console
  2. 選取或建立專案。
  3. 要產生新 API 金鑰,請按一下 [Create credentials] 按鈕。
  4. 從認證類型清單上選取 [API key]
  5. 接著便會建立新的金鑰,並顯示在彈出式視窗中。
  6. 要設定所需的金鑰限制(選擇性),請選取 [Restrict key],然後遵循頁面上的操作說明來設定限制。
  7. API 金鑰會列在 [credentials] 頁面上。請注意,清單中的金鑰是依照限制類型來區分的。沒有限制的 API 金鑰是一般金鑰,可搭配任何 API 使用。

在要求中指定 API 金鑰

要在要求中指定 API 金鑰,請將它包括為金鑰參數的值。

範例:

針對 Elevation API

https://maps.googleapis.com/maps/api/elevation/json?locations=39.739,-104.984&key=YOUR_API_KEY

針對 Geolocation API

https://www.googleapis.com/geolocation/v1/geolocate?key=YOUR_API_KEY

如何解決此錯誤:"This IP, site or mobile application is not authorized to use this API key."?

有數種情境可能會造成此錯誤:

  • 您已在 API 金鑰上啟用 IP 位址(伺服器)限制,並且有未經授權的 IP 位址正在嘗試做出要求。
  • 您已在 API 金鑰上啟用 HTTP 參照網址(瀏覽器)限制,並且有未經授權的參照網址正在嘗試做出要求。
  • 您已透過設定套件名稱與指紋來限制您 Android 應用程式的使用量,並且有未經授權的 Android 應用程式正在嘗試做出要求。
  • 您已透過指定套件組合識別碼來限制來自 iOS 應用程式的要求,並且有無法辨識的 iOS 應用程式正在嘗試傳送要求。
  • 在過去,如果您使用的是帶瀏覽器限制 API 金鑰的 Web 服務 API,就可能遇到此錯誤。對 Web 服務 API 的要求應該透過伺服器限制 API 金鑰識別。將金鑰限制類型從瀏覽器限制金鑰切換為伺服器限制金鑰

檢視並編輯您的 API 金鑰認證

要檢視您的 API 金鑰及管理任何限制,請執行以下操作:

  1. 前往 Google API Console
  2. 選取您要檢閱的包含 API 金鑰之專案。
  3. 如果要檢視認證詳細資料 (包括針對金鑰設定的任何限制),請在 API 金鑰清單上按一下該金鑰的名稱。
  4. 這將會顯示所選 API 金鑰的完整認證,包括針對該金鑰設定的任何限制。您可以視需要在這裡變更、刪除或更新限制。

如何解決此錯誤:"API keys cannot have referer restrictions when used with this API."?

您正在使用帶瀏覽器限制 API 金鑰的任何一種 Web 服務 API。出於安全原因,Web 服務 API 必須使用伺服器限制 API 金鑰將您的金鑰限制類型從瀏覽器限制切換為伺服器限制

如何找出 Google Maps API 各個版本所引進的變更?

我們於下列位置維持一份於 Google Maps JavaScript API 各版本之間所做變更的清單:

https://developers.google.com/maps/documentation/javascript/releases

您也可以使用位於下列位置的 Google Maps APIs Issue Tracker 檢查特定錯誤是由哪一個 Google Maps APIs 版本所引入,並修復之:

http://code.google.com/p/gmaps-api-issues/issues/list

如何在載入頁面後以非同步方式將 API 載入到該頁面?

只需在載入 API 時指定回呼參數。您可以在 Maps JavaScript API 文件的開始使用一章取得更多相關資訊與範例程式碼。

如何使 Google Maps APIs 顯示英文之外的其他語言?

根據預設,API 將會根據使用者位置或瀏覽器設定嘗試載入最適當的語言。有些 API 允許您在做出要求時明確設定語言。有關如何設定語言的詳細資訊,可在每個 API 的文件中取得:

支援的語言
語言代碼 語言 語言代碼 語言
ar 阿拉伯文 kn 坎那達文
bg 保加利亞文 ko 韓文
bn 孟加拉文 lt 立陶宛文
ca 卡達隆尼亞文 lv 拉脫維亞文
cs 捷克文 ml 馬來亞拉姆文
da 丹麥文 mr 馬拉提文
de 德文 nl 荷蘭文
el 希臘文 no 挪威文
en 英文 pl 波蘭文
en-AU 英文(澳大利亞) pt 葡萄牙文
en-GB 英文(英國) pt-BR 葡萄牙文(巴西)
es 西班牙文 pt-PT 葡萄牙文 (葡萄牙)
eu 巴斯克文 ro 羅馬尼亞文
eu 巴斯克文 ru 俄文
fa 波斯文 sk 斯洛伐克文
fi 芬蘭文 sl 斯洛維尼亞文
fil 菲律賓文 sr 塞爾維亞文
fr 法文 sv 瑞典文
gl 加里斯亞文 ta 坦米爾文
gu 古吉拉特文 te 特拉古文
hi 印度文 th 泰文
hr 克羅埃西亞文 tl 塔加拉族文
hu 匈牙利文 tr 土耳其文
id 印尼文 uk 烏克蘭文
it 義大利文 vi 越南文
iw 希伯來文 zh-CN 中文(簡體)
ja 日文 zh-TW 中文(繁體)

您可以在這個範例應用程式中查看以您的語言顯示的地圖。

是否可以透過 SSL (HTTPS) 存取 Google Maps APIs?

Google Maps JavaScript API、Google Static Maps API 和 Google Maps APIs Web 服務可以由開發人員使用下列免費版本的 API 或 Google Maps APIs Premium Plan,透過安全的 (HTTPS) 連線存取。請參閱 API 的文件以取得如何透過 SSL 存取該 API 的資訊。

請注意,Google Static Maps API 並不支援使用 HTTPS 的自訂圖示 URL;在這種情況下,將會顯示預設圖示。

如何在 Google Maps APIs 中回報錯誤或要求新功能?

如果您遇到您認為是錯誤的行為,請先在相關論壇上回報它。這可讓其他開發人員驗證該錯誤,並排除您程式碼上的任何可能問題。

如果您想要要求功能,請一樣先在相關論壇上回報它,以確認是否已經有符合您需求的解決方案。

當您確認您已識別出新錯誤,或是 Google Maps API 的現有功能無法滿足您的需求,請使用 Google Maps APIs Issue Tracker 回報您的錯誤或功能要求。

在將錯誤或功能要求新增至 Issue Tracker 之前,請務必確認其他人未新增該錯誤或功能。如果該錯誤或功能已經被新增,您可以在該問題上標註星號來關注它,以便在更新時獲得通知。

這個錯誤代表什麼意思?

如果您在載入 Google Maps JavaScript API 時發生錯誤,請查看錯誤訊息以尋找錯誤代碼的說明。

我有不同的疑問/問題。我應該聯絡誰?

Google 的開發人員關係團隊會持續在 Stack Overflow 上活動。Stack Overflow 是一個針對程式設計人員、以協力方式編輯問題與解答的網站。這是一個詢問有關開發及維護「Google 地圖」應用程式之問題的好地方。更多關於在 Stack Overflow 上詢問問題的資訊,將於支援頁面中提供。

如果要在要求協助時取得最佳的結果,請記得以下事項:

  • 搜尋目前的討論。因為很有可能已經有人遇到類似的問題,並找到了解決的方法。
  • 可以的話,請提交您網站的連結。如果程式碼在線上不容易檢視,請改為張貼程式碼片段。
  • 提供所有相關的資訊,包括瀏覽器版本、錯誤,以及可能會對疑難排解此問題有幫助的所有其他事實。

Google Maps APIs Premium Plan 客戶也可以聯絡 Premium Plan 支援

Google Maps APIs 服務

我需要將地址轉換為緯度/經度組合。我是否可以使用 Google Maps APIs 完成此工作?

是,此程序稱為「地理編碼」。Google Maps JavaScript API 包括一個用來執行地理編碼服務的類別。該類別為:google.maps.Geocoder

除此之外,Google 也提供 Google Maps Geocoding API,提供能以 JSON 與 XML 格式做出回應的 REST 介面。

請務必留意應用於地理編碼要求的使用限制。此外,請注意,將地理編碼器用於取得用 Google Maps APIs 顯示之位置以外的目的,皆會被視為違反服務條款。您可以在 Maps API 應用程式之外使用 HTTP 地理編碼器為地址進行地理編碼,以將結果儲存於快取內,並在稍後使用其中一個 Google Maps APIs 顯示,但透過 Google Maps Geocoding API地理編碼服務所取得的位置不能夠用於任何其他應用程式、以任何其他方式散佈或轉售。

可以使用地理編碼的國家/地區有哪些?

要查看 Google Maps APIs 地理編碼器目前所支援的國家/地區,請參閱 Google 地圖涵蓋資料

地理編碼位置的準確度將依國家/地區而異,因此您應該考慮使用傳回的 location_type 欄位來判斷配對結果是否可以滿足您應用程式的目的。請注意,地理編碼資料的可用性取決於我們與資料提供者之間的合約,因此可能會變更。

針對 Google Maps APIs 目前不支援地理編碼的國家/地區,請瀏覽本清單以取得其他地理編碼服務。

為什麼 Google Maps APIs 地理編碼器提供的位置與「Google 地圖」不同?

API 地理編碼器與「Google 地圖」地理編碼器有時候會使用不同的資料集(取決於目標國家/地區)。由於 API 地理編碼器不時會更新新的資料,因此結果會隨著時間變更或改進。

如何格式化我的地理編碼器查詢,以最大化成功要求數目?

地理編碼器的設計目標是將街道地址對應至地理座標。因此我們建議您按照下列指導方針來格式化地理編碼器要求,以最大化取得成功查詢的機會:

  • 按照所關注國家/地區的郵遞服務格式來指定地址。
  • 不要指定其他沒有被包括在由所關注國家/地區之郵遞服務所定義地址中的地址元素,例如公司名稱、單位號碼、樓層號碼或套房號碼。
  • 可以的話,請優先使用建築物的門牌號碼,而不要使用建築物名稱。
  • 可以的話,請優先使用門牌號碼定址方式,而不要指定交叉路口。
  • 不要提供「提示」,例如附近的地標。

如何針對地理編碼格式化位於具編號公路上的美國地址?

Google Maps APIs 地理編碼器要求以下列地址格式指定美國具編號的公路:

  • 郡內道路:"Co Road NNN",其中 NNN 是道路編號,例如"Co Road 82"
  • 州內公路:"State NNN",其中 State 為該州的完整名稱,而 NNN 則是公路編號,例如"California 82"
  • 美國公路:"U.S. NNN",其中 NNN 是公路編號,例如"U.S. 101"
  • 美國州際公路:"Interstate NNN",其中 NNN 是州際公路編號,例如"Interstate 280"

何時該使用 API 地理編碼器類別?何時該使用 HTTP 地理編碼服務?

請參閱文件:地理編碼策略,它提供各種不同地理編碼策略之間的優點與缺點。

如何使用 Google Maps APIs 提供開車路線規劃?

Google Maps JavaScript API 允許您透過 google.maps.DirectionsService 類別提供開車路線規劃。此類別為您提供存取基本與多點開車路線規劃的逐步說明。DirectionsRenderer 類別可以自動為您建立疊加層與路線規劃面板。該文件中也提供其他範例

您可以輕易地連結至「Google 地圖」以取得開車路線規劃。我們建議您在 Google 地圖上使用下列格式以取得開車路線規劃:

http://maps.google.com/maps?saddr={start_address}&daddr={destination_address}

在哪些國家/地區可以使用開車路線規劃?

如果要查看 Maps API 中的開車路線規劃目前所支援的國家/地區,請參閱 Google 地圖涵蓋資料。請注意,開車路線規劃的可用性取決於我們與資料提供者之間的合約,並且可能會變更。

在哪些國家/地區可以使用大眾運輸路線規劃?

「Google 地圖」的路線規劃服務支援所有列在大眾運輸涵蓋清單上的大眾運輸業者 (位於日本的大眾運輸業者除外)。

Google Maps JavaScript API 中支援哪些 KML 與 GeoRSS 功能?

Javascript API 中的 KmlLayer 類別可讓開發人員於地圖上方疊加 KML/KMZ 與 GeoRSS 檔案。您可在此處找到文件與範例。

使用 Google Maps JavaScript API 的 KmlLayer 類別時,可以顯示的 KML 有哪些大小與複雜性限制?

KmlLayer 類別顯示 KML 的大小與複雜性限制記錄於此

Google Static Maps API 支援的標記或路徑頂點的最大數目為何?

Google Static Maps API 所支援的標記或路徑頂點並沒有數目限制。使用自訂圖示時,每個要求可以指定最多五個唯一圖示,但每個圖示都可以在地圖內多次使用。

請注意, Google Static Maps API URL可以包含最多約 2,000 個字元。根據指定每個緯度/經度組合時所使用的小數點位數,將會限制可指定的標記與路徑頂點數目。如需有關所使用之小數點位數與地球上位置準確度之間關聯的資訊,請參閱 Wikipedia 的小數點位數文章。

為什麼我無法從中國存取 Google Maps APIs?

在中國,Google Maps APIs 是從 maps.google.cn 網域提供服務。這個網域支援 https。從中國對 Google Maps APIs 做出要求時,請以 http://maps.google.cn 取代 https://maps.googleapis.com

例如:

https://maps.googleapis.com/maps/api/geocode/json?address=1600+Amphitheatre+Parkway,+Mountain+View,+CA

將會變成:

http://maps.google.cn/maps/api/geocode/json?address=1600+Amphitheatre+Parkway,+Mountain+View,+CA

您可以透過下列啟動程序載入 Google Maps JavaScript API:

<script src="http://maps.google.cn/maps/api/js?key=YOUR_API_KEY"
type="text/javascript">
</script>

Google Maps SDK for iOS

我在使用 iOS 8.x 裝置偵錯時發生當機。我該做什麼?

如果使用執行 iOS 8.x 的裝置偵錯時遇到問題,請遵循以下步驟,在您正執行的 XCode 配置中,停用 GPU 頁框拍攝:

  1. 在 XCode 中,選擇 [Product]、[Scheme]、[Manage Schemes]
  2. 選取一個配置,然後選擇 [Edit...]

  3. 將 [GPU Frame Capture] 選項設定為 [Disabled]。請注意,並非所有裝置都有此選項。

傳送您對下列選項的寶貴意見...

這個網頁
Google Maps API
Google Maps API