Google 地圖平台常見問題

開始使用

瞭解服務條款

用量限制和計費方式

使用 Google 地圖平台

錯誤和疑難排解

Google 地圖平台服務

Google Maps SDK for iOS

Google Maps SDK for Android

網址簽署

開始使用

什麼是 Google 地圖平台?

Google 地圖平台是一組由 API 和 SDK 構成的產品,可讓開發人員將 Google 地圖嵌入行動應用程式和網頁中,或是從 Google 地圖擷取資料。其中提供的產品項目有很多種,您可以根據自己的需求,使用單一 API/SDK 或是 API 和 SDK 組合。

地圖介面集:

路徑介面集:

地點介面集:

如何開始使用 Google 地圖平台?

請參閱「開始使用 Google 地圖平台」一文。

我需要哪一種 API?

如想瞭解如何根據自己的功能需求找到適合的 API,請參閱 API 挑選器

如何開始在我的網站上使用 API?

請根據您感興趣的 API 或 SDK,參閱相關的「總覽」、「開發人員」及「入門指南」。如需說明範例,請參閱 Maps SDK for AndroidMaps JavaScript API

Google 地圖平台的資料涵蓋哪些國家/地區?

Google 地圖團隊持續增加新的地圖資料,將逐漸涵蓋更多國家/地區。如需有關涵蓋範圍的最新資訊,請參閱Google 地圖涵蓋資料。網頁頂端的篩選器方塊可用來篩選資料。請注意,如果 Google 與資料提供者之間的授權協議有所變動,涵蓋資料也會跟著調整。

另請參閱:

如不使用 Google 地圖平台產品,我還能在網站上嵌入 Google 地圖嗎?

可以,Google 地圖現在能讓您將目前正在查看的地圖,內嵌至您的網站或網誌,不必撰寫任何程式碼或使用 Google 地圖平台。詳情請參閱這裡的說明

如何在行動裝置上提供 Google 地圖應用程式?

如要將地圖整合至 Android 應用程式,請使用 Maps SDK for Android

如要將地圖內嵌至原生的 iOS 應用程式,請使用 Google Maps SDK iOS

經過開發人員的調整,Maps JavaScript API 現已支援行動裝置,並適用於瀏覽器應用程式,可在 Apple iPhone 等具備網路瀏覽器 (內建完整 JavaScript 支援) 的裝置和電腦上使用。

如果應用程式支援的裝置無法使用 Maps JavaScript API,Maps Static API 會傳送 GIF、JPG 和 PNG 格式的地圖圖片,包括標記和折線。請注意,如果要在瀏覽器應用程式外使用 Maps Static API,您必須將地圖圖片連結至 Google 地圖。

Maps JavaScript API 和 Maps Embed API 支援哪些網路瀏覽器?

Maps JavaScript API 和 Maps Embed API 支援下列網路瀏覽器:

電腦
  • 最新版本的 Microsoft Edge (Windows)
  • 最新版本及前一個版本的 Firefox (Windows、macOS、Linux)
  • 最新版本及前一個版本的 Chrome (Windows、macOS、Linux)
  • 最新版本及前一個版本的 Safari (macOS)

自 2021 年 8 月起,Internet Explorer 11 使用者會在地圖頂端看到警告訊息。支援 Internet Explorer 11 的最新版 Maps JavaScript API 為 3.47 版。我們將在 2022 年 8 月完全停止支援 Internet Explorer 11。 Edge 中的 IE 模式也是如此。

Android
  • 最新版本的 Chrome (Android 4.1+ 版)。
  • Chrome WebView (Android 4.4+ 版)。
iOS
  • iOS 主要版本中最新版及前一版的行動版 Safari。
  • iOS 主要版本中最新版及前一版的 UIWebView 和 WKWebView。
  • 最新版的 Chrome (iOS 版)。
我可以使用 Maps JavaScript API 列印地圖嗎?

我們不支援透過 Maps JavaScript API 列印,這是因為常用瀏覽器中支援的列印功能各有不同。

Google 地圖平台產品有任何異動時,我要如何收到通知?

建議您訂閱 Google 地圖平台網誌,掌握 Google 地理開發人員各項功能項目的最新進展與消息。

我該如何與技術支援人員聯絡?

如要瞭解可用的支援選項,請參閱 Google 地圖平台支援和資源

技術支援的服務時間是什麼時候?
支援團隊會針對「地圖平台服務無法使用」的情況提供支援,服務時間為平日 24 小時全天候無休 (東京時間週一上午 9 點至太平洋時間週五下午 5 點),地區性假日不提供服務。
如何重新取得 Google 帳戶的存取權限?

如果您已經無法存取自己的 Google 帳戶 (例如 joe@mycompany.com 或 joe@gmail.com),可以嘗試擷取或重設密碼來取回帳戶。請造訪 Google 帳戶說明中心,參閱「如何復原您的 Google 帳戶或 Gmail」一文。

如何重新取得特定專案的存取權限?

如果您已經無法存取用來管理 Google 地圖平台服務的專案,可以嘗試復原該專案。

如果您可以存取與專案相關聯的 Google 帳戶:

如果您無法存取與專案相關聯的 Google 帳戶:

我可以在搭載 ARM 的 Mac 上使用 Maps SDK for iOS 和 Places SDK for iOS 嗎?

您可以在以搭載新 ARM 的 Mac 上進行開發,不過必須在實體 iOS 裝置上建構和執行。這項限制只是暫時的,我們正持續擴大支援在模擬工具上進行開發。

瞭解服務條款

Google 地圖平台產品的服務條款有什麼內容?

《Google 地圖平台服務條款》已列載於以下網址:

https://cloud.google.com/maps-platform/terms

我的網站符合《Google 地圖平台服務條款》的規定嗎?

只要您的網站符合《Google 地圖平台服務條款》規定,就可以在應用程式內使用 Google 地圖平台。

不過,我們並不樂見 Google 地圖平台被拿來不當使用,例如指出城市裡哪些地方可以購買禁藥,或用來從事任何非法活動。此外,我們也尊重個人隱私,請勿使用 Google 地圖平台來洩露個人隱私資訊。

建議您在開發及推出應用程式之前,先向律師諮詢,確認您的應用程式是否符合《Google 地圖平台服務條款》的規定。Google 工程師只能提供技術協助,無法提供任何法律諮詢。Google 保留相關權利,得以隨時暫停或終止您對本服務的使用權限,請務必詳閱《Maps API 條款》。

我可以直接存取地圖圖塊和衛星圖像嗎?

除了使用 Google 地圖平台,您無法透過任何其他機制 (例如建立自己的地圖 API 或使用大量圖塊下載指令碼) 來存取地圖圖塊或衛星影像。如果您的應用程式是透過 Google 地圖平台以外的途徑存取圖塊,系統將會封鎖其存取權限。詳情請參閱《Google 地圖平台服務條款》。

我可以將 Google 地圖平台產品用於追蹤應用程式嗎?

只要應用程式符合《Google 地圖平台服務條款》規定,透過 Google 地圖平台產品顯示即時資料的功能 (即追蹤),就不會受到任何限制。

我可以在非網頁應用程式中使用 Google 地圖嗎?

可以,Google 地圖應用程式產品現在可以在非網頁應用程式中使用,但這些應用程式必須遵守《Google 地圖平台服務條款》的其他適用限制。

Maps JavaScript API 只能在這些支援的瀏覽器中執行。

我可以在有密碼保護的網站上使用 Google 地圖平台產品嗎?

沒問題,您可以在私人存取的應用程式中使用 Google 地圖介面集、路徑介面集、地點介面集服務。詳情請參閱《Google 地圖平台服務條款》。

我可以建立文件中內含 Google 地圖平台資料的應用程式嗎?

假如您的應用程式會產生任何電子或紙本形式的文件 (包括圖片),則文件內不得包含任何來自 Google 地圖平台的資料。 詳情請參閱《Google 地圖平台服務條款》的「禁止爬梳」(No Scraping) 一節。

如何讓 Google 搜尋結果停止收錄我的內容?

我們已停止收集這項資料。indexing 參數已淘汰不用,因此不會產生任何作用。雖然您並不需要另行選擇停用,但我們建議您盡早移除該參數。

如要從搜尋結果中移除您的網頁或網站,請遵循網站管理員說明中心提供的操作指示

我可以使用 Maps Static API 產生地圖圖片,並在我的網站上儲存與提供該圖片嗎?

您無法在自家網站上儲存及提供透過 Maps Static API 產生的圖片。所有要求靜態圖片的網頁都必須將 HTML img 標記的 src 屬性或 HTML div 標記的 CSS background-image 屬性直接連結至 Maps Static API,讓所有地圖圖片顯示在網頁的 HTML 內容中,再由 Google 直接向使用者提供圖像。

用量限制和計費方式

如何為專案設定帳單資訊?
請參閱「開始使用 Google 地圖平台」一文。
Google Cloud Platform 的免費方案客戶如何升級至付費帳戶?
Google Cloud Platform 免費方案計畫提供 $300 美元的抵免額,讓客戶免費試用任何 Google Cloud Platform (GCP) 服務,包括 Google 地圖平台 (GMP) 的 API。但在免費試用期結束後,必須升級為付費帳戶,才能繼續使用這些服務。如要升級為付費帳戶,請前往 Cloud Console
Google 地圖平台是否有用量限制?

針對您可以向 Google 地圖平台產品發出的要求數,我們並未設定任何每日上限。唯一的用量限制是「每秒查詢次數」(QPS),下表列出各項 API 的每秒查詢次數限制:

API 每秒查詢次數限制

規劃路線

每秒查詢 50 次

距離矩陣

每秒查詢 1000 次

海拔高度

每秒查詢 100 次

地理編碼

每秒查詢 50 次

地理位置

每秒查詢 100 次

動態地圖

每秒查詢 500 次

靜態地圖

每秒查詢 500 次

Street View Image API

每秒查詢 500 次

時區

每秒查詢 500 次

地點 (JavaScript 和網路)

每秒查詢 100 次

道路

每秒查詢 500 次

如要控管支出,您可以監控 API 使用情況,並針對所有可計費 API 設定每日要求數上限

部署 Google 地圖平台產品時,一律遵循標準版《Google 地圖平台服務條款》。

如何計算使用費?

如需 Google 地圖平台產品定價總覽,請參閱價目表

如要進一步瞭解 Google 地圖平台各式 API 的計費方式,請參閱瞭解地圖介面集、路徑介面集和地點介面集的計費方式

Google 地圖平台如何計算地圖載入量?

發生下列任一情況時,系統會計為一次地圖載入:

  • 使用 Maps JavaScript API 顯示地圖的網頁或應用程式。
  • 應用程式向 Maps Static API 要求單一地圖圖片。

街景服務全景和地圖載入量現已分開計費。

  • 每次向 Street View Static API 要求嵌入靜態 (非互動式) 街景服務全景,系統會計為一次靜態街景服務全景。
  • 每次針對 Maps JavaScript API、Maps SDK for Android、Maps SDK for iOS 應用程式中的全景物件執行個體化,系統就會計為一次動態街景服務全景。

一旦網頁或應用程式載入地圖、靜態地圖圖片或街景服務全景,使用者與這些元素之間的任何互動 (例如平移、縮放或切換地圖圖層),都不會產生額外的地圖載入次數或影響用量限制。

如何監控用量?

您可以在 Google Cloud Platform Console 中監控個別 API 的使用情形。

  1. 選取您要查看的 API 所屬的專案。
  2. 在資訊主頁的 API 清單中,按一下 API 名稱。
  3. 在頁面頂端附近,按一下 [指標] 或 [配額]

如要查看整個專案的流量報表和帳單資訊,請按照以下步驟操作:

  1. 如果您尚未設定帳單資訊,請先進行設定
  2. 前往 Cloud Console 的帳單頁面
  3. 選擇專案。
  4. 在左側欄中,按一下 [報表]。使用右側欄的篩選器,即可查看帳單帳戶的報表。

詳情請參閱 Google 地圖平台報表監控您的 API 使用情形限制 API 用量

超過要求比率 (每秒查詢次數) 限制會怎麼樣?

如果超過特定 Google 地圖平台產品的每秒查詢次數限制,API 會傳回錯誤訊息。要是屢次超過上限,系統可能會暫時封鎖您的 API 存取權限。

如果您超過要求的每秒查詢次數限制或濫用服務,該要求會傳回特定錯誤訊息。假如您繼續超過限制,系統可能會暫時封鎖您的 Google 地圖平台存取權限。

注意事項:Maps JavaScript API 中的下列這四個網路服務 API 會提供同等的用戶端服務:DirectionsDistance MatrixElevationGeocoding

超過用量限制

如果您超過用量限制,就會收到 OVER_QUERY_LIMIT 狀態碼回應。

這表示網路服務將停止正常回應,並改為只傳回狀態碼 OVER_QUERY_LIMIT,直到再次可用為止。假如您收到這項錯誤是因為應用程式每秒傳送的要求數量過多,那麼服務應該幾秒內就可以恢復。

如果您經常超過每秒查詢次數用量限制,不妨考慮提高應用程式使用 Google 地圖平台產品的效率,藉此降低用量。詳情請參閱最佳化指南

我的網站流量很大,可以使用 Google 地圖平台產品嗎?

可以,但我們建議您詳加瞭解應用程式使用各項 Google 地圖平台產品時,應遵循的相關用量限制

您建立帳單帳戶後,如果超過每月 $200 美元的免費用量限制,且沒有在帳單帳戶中提供有效的付款方式 (例如信用卡、銀行轉帳設定等等),API 就會停止運作,直到您加入有效的付款方式為止。

如何計算用量及收費?

我們會在每天結束時,按照價目表的價格來計算用量, 並於每月月底以您帳單帳戶連結的付款方式,向您收取總用量費用。詳情請參閱「Google 地圖平台計費方式」一文。

使用 Google 地圖平台需要支付多少費用?

如需各項 API 費用總覽,請參閱價目表。只要您的應用程式產生的要求或地圖載入量,低於每月 $200 美元免費額度可折抵的用量,則不必支付任何費用;但要是用量超過每月 $200 美元的抵免額,我們就會向您的帳單帳戶收費。詳情請參閱瞭解 Google 地圖平台計費方式指南

是否能查看以其他幣別為單位的定價資訊?

您可以在主控台內查看其他幣別的定價資訊。如果您選取其他貨幣,系統會根據價目表中對應的美元來換算費率。

我已經完成帳單設定,要如何查看帳單?

Google 會在每月月初根據您指定的付款方式,向您收取上個月的活動費用。如需帳單詳細資料,請參閱瞭解 Google 地圖平台計費方式指南

其他資源:

萬一用量突然無預警增加,我要如何避免帳單金額暴增?

Google 地圖平台支援一些限制功能,可讓您指定每日要求上限和每日計費上限。您可以設定每日用量上限,以防費用突然無預警增加;也可設定預算快訊,系統就會在帳單帳戶費用達到您設定的門檻時,寄送電子郵件通知您。

設定每日計費上限:

為避免帳單費用暴增,不妨設定每日用量上限,以防用量無預警增加。您可以在 Cloud Console 中變更這項限制,步驟如下:

  1. 前往「API 和服務」資訊主頁。
  2. 畫面出現提示時,請選取專案。
  3. 從清單中選取 API,然後按一下 [配額] 分頁標籤。
  4. 按一下「每日要求數」配額旁邊的「編輯」圖示

或者,您可以透過「IAM 與管理員」的「配額」資訊主頁,編輯多個 API 的多個配額。

設定及管理預算快訊:

只要設定預算快訊,系統就會在帳單帳戶費用達到您設定的門檻時,寄送電子郵件通知給帳單管理員。當帳單帳戶的預估費用超過指定門檻的 50%、90% 和 100%,帳單管理員就會收到電子郵件通知。

我收到一則訊息,當中提及我的專案已連結至「Google 地圖平台轉換帳戶」,但我沒有這個帳戶的存取權限,該怎麼做?

我們之所以建立「Google 地圖平台轉換帳戶」,是為了協助某些客戶轉換至新的即付即用定價方案。Google 會透過這個轉換帳戶,提供免費方案的 $200 美元一次性抵免額給客戶,獲得抵免額的客戶可繼續使用 Google 地圖平台,直到用完該額度。一旦超過額度上限,帳單帳戶就會關閉,而您將無法再使用 Google 地圖平台服務。為避免服務中斷,我們極力建議您設定一個自己的帳單帳戶,這樣就能繼續享有每月 $200 美元的免費額度。如要變更專案的帳單帳戶,請按照下列指示操作:

  1. 建立新的帳單帳戶 (如果您已有帳單帳戶,可以跳過這個步驟)。
  2. 將帳單帳戶連結至自有專案
為什麼我的配額限制設定為每天 1 次要求?要如何提高上限?

如果您尚未建立帳單帳戶並將其連結至專案,則 Maps Platform API 每天只能傳送 1 次要求。只要建立並連結帳單帳戶,就能獲得更多配額。相關操作說明請參閱「開始使用 Google 地圖平台」一文。

一旦建立並連結帳單帳戶,系統就會幫您移除每日配額限制。您可以在 Cloud Console 中設定限制,避免非預期的支出

我收到了帳單違規通知,該如何解決這個問題?

Google 判定您的帳戶設定了多個帳單帳戶,因此我們寄送這則通知給您。這違反了《Google 地圖平台服務條款》第 3.2.4 節中定義的 Google 條款規定。 該等條款禁止使用者建立多個帳單帳戶。 詳情請參閱帳單帳戶違規常見問題

使用 Google 地圖平台

我該針對不同的地圖產品使用哪組金鑰或憑證?

每次使用 Google 地圖平台產品時,您都必須提供 API 金鑰來驗證要求。Google 地圖平台支援 Android、iOS 或網頁應用程式,也可透過 HTTP 網路服務使用。

API 金鑰:

  • API 金鑰是您使用 Cloud Console 產生的一組專屬 ID。
  • 使用金鑰載入 API 的範例:&key=AIzaSyBjsINSH5x39Ks6c0_CoS1yr1Mb3cB3cVo

數位簽章:

  • 數位簽章須使用 Google 提供給您的網址簽署密鑰來產生,可與 Maps Static API 及 Street View Static API 搭配使用。

限制:

  • 雖然 API 金鑰限制為選用功能,但我們極力建議您限制所有 API 金鑰,進一步提升安全性。詳情請參閱 API 安全性最佳做法
  • 您可以對 API 金鑰新增應用程式限制。 一旦設下限制,該金鑰就只能在支援該類限制的平台上使用。 共有四種應用程式限制可以設定。強制執行相同限制類型的 API 可以使用同一組受限制的金鑰。
  • 您也可以對 API 金鑰新增 API 限制。詳情請參閱取得、新增及限制 API 金鑰

下表列出每個 Google 地圖平台 API/SDK 的金鑰/憑證和應用程式限制。

API/SDK 憑證和應用程式限制
Maps SDK for Android 具有 Android 限制的 API 金鑰1
Places SDK for Android 具有 Android 限制的 API 金鑰1
Maps SDK for iOS 具有 iOS 限制的 API 金鑰1
Places SDK for iOS 具有 iOS 限制的 API 金鑰1
Maps JavaScript API 具有 HTTP 參照網址限制的 API 金鑰1
Maps Static API 具有 HTTP 參照網址限制的 API 金鑰1 + 數位簽章2
Street View Static API 具有 HTTP 參照網址限制的 API 金鑰1 + 數位簽章2
Maps Embed API 具有 HTTP 參照網址限制的 API 金鑰1
Directions API 具有 IP 位址限制的 API 金鑰1
Distance Matrix API 具有 IP 位址限制的 API 金鑰1
Elevation API 具有 IP 位址限制的 API 金鑰1
Geocoding API 具有 IP 位址限制的 API 金鑰1
Geolocation API 具有 IP 位址限制的 API 金鑰1
Roads API 具有 IP 位址限制的 API 金鑰1
Time Zone API 具有 IP 位址限制的 API 金鑰1
Places API 具有 IP 位址限制的 API 金鑰1
1 雖然 API 金鑰限制為選用功能,但我們極力建議您限制所有 API 金鑰,進一步提升安全性。
2 視使用情況而定,Maps Static APIStreet View Static API 可能會要求您提供數位簽章;但不管是什麼用途,我們極力建議您一起使用 API 金鑰和數位簽章來驗證要求。
如何將金鑰限制類型從 HTTP 參照網址變更為 IP 位址限制?

重要事項:如果您使用的網路服務 API 內含設有參照連結限制的 API 金鑰,則要求將會失敗並傳回下列錯誤訊息:「使用此 API 時,API 金鑰不能含有參照連結限制」。請改用設有 IP 位址限制的 API 金鑰。

在將 API 金鑰的限制類型從 HTTP 參照網址改為 IP 位址之前,請確保所有使用該 API 金鑰的 API 都支援 IP 限制類型。同一個限制類型的 API 可使用同一組受限制的金鑰。如要強制執行多項限制,請另外新增一組金鑰並設定您需要的限制。瞭解如何新增 API 金鑰

進一步瞭解與 Google 地圖平台產品相關的 API 金鑰限制

如要將設有 HTTP 參照網址限制的 API 金鑰改為 IP 位址限制,請按照下列指示操作:

  1. 前往 Cloud Console 的「憑證」頁面
  2. 選取您要編輯的 API 金鑰所屬的專案。
  3. 在「憑證」頁面的 API 金鑰清單中,選取 API 金鑰名稱,並編輯該金鑰的詳細資料。
  4. 在頁面的「金鑰限制」部分,選取 [IP 位址 (網路伺服器和 Cron 工作等)],並插入適當的伺服器 IP 位址,然後按一下 [儲存]。
如何取得新的 API 金鑰?
請參閱「開始使用 Google 地圖平台」一文。
如何查看每個 Google 地圖平台版本的變更項目?

下列連結有許多 Maps API 的版本變更資訊:

您也可以使用下列網址的 Google 地圖平台 Issue Tracker 工具,查看各 Google 地圖平台版本的錯誤,以及這些錯誤在哪些版本中已修正:

https://issuetracker.google.com/bookmark-groups/76561

如何在網頁載入之後,以非同步方式將 API 載入該網頁?

只要在載入 API 時指定回呼參數即可。如需相關詳情或程式碼範例,請參閱 Maps JavaScript API 說明文件中的「開始使用」章節。

如何用英文以外的語言顯示 Google 地圖平台產品?

根據預設,API 會根據使用者所在位置或瀏覽器設定,載入最合適的語言。有些 API 可讓您在提出要求時明確指定語言。如要進一步瞭解語言的設定方式,請參閱各 API 的說明文件:

支援的語言:

Google 會經常更新支援的語言,因此這份清單可能不夠詳盡,且會隨時變更。

語言代碼 語言 語言代碼 語言
af 南非荷蘭文 ja 日文
sq 阿爾巴尼亞文 kn 卡納達文
am 阿姆哈拉文 kk 哈薩克文
ar 阿拉伯文 km 高棉文
hy 亞美尼亞文 ko 韓文
az 亞塞拜然文 ky 吉爾吉斯文
eu 巴斯克文 lo 寮文
be 白俄羅斯文 lv 拉脫維亞文
bn 孟加拉文 lt 立陶宛文
bs 波士尼亞文 mk 馬其頓文
bg 保加利亞文 ms 馬來文
my 緬甸文 ml 馬拉雅拉姆文
ca 加泰隆尼亞文 mr 馬拉提文
zh 中文 mn 蒙古文
zh-CN 中文 (簡體) ne 尼泊爾文
zh-HK 中文 (香港) no 挪威文
zh-TW 中文 (繁體) pl 波蘭文
hr 克羅埃西亞文 pt 葡萄牙文
cs 捷克文 pt-BR 葡萄牙文 (巴西)
da 丹麥文 pt-PT 葡萄牙文 (葡萄牙)
nl 荷蘭文 pa 旁遮普文
en 英文 ro 羅馬尼亞文
en-AU 英文 (澳洲) ru 俄文
en-GB 英文 (英國) sr 塞爾維亞文
et 愛沙尼亞文 si 錫蘭文
fa 波斯文 sk 斯洛伐克文
fi 芬蘭文 sl 斯洛維尼亞文
fil 菲律賓文 es 西班牙文
fr 法文 es-419 西班牙文 (拉丁美洲)
fr-CA 法文 (加拿大) sw 史瓦西里文
gl 加里斯亞文 sv 瑞典文
ka 喬治亞文 ta 泰米爾文
de 德文 te 泰盧固文
el 希臘文 th 泰文
gu 古吉拉特文 tr 土耳其文
iw 希伯來文 uk 烏克蘭文
hi 印度文 ur 烏都文
hu 匈牙利文 uz 烏玆別克文
is 冰島文 vi 越南文
id 印尼文 zu 祖魯文
it 義大利文

您可以透過這個範例應用程式,看看使用以上語言呈現出來的地圖介面是什麼樣子。

可以透過安全資料傳輸層 (SSL) (HTTPS) 存取 Google 地圖平台嗎?

Maps JavaScript API、Maps Static API 和 Web Service API 都可以透過安全的 (HTTPS) 連線存取。如要瞭解如何透過安全資料傳輸層 (SSL) 存取 API,請參閱相關 API 的說明文件。

請注意,Maps Static API 不支援使用 HTTPS 的自訂圖示網址,因此將顯示預設圖示。

如何在 Google 地圖平台中回報錯誤或提出新功能建議?

如果您遇到可能是平台設計錯誤而造成的問題,請先至相關論壇提問。這樣可以讓其他開發人員進行驗證,確認問題並非來自您的程式碼。

有任何新功能建議,也請先在相關論壇中提出,確定目前還沒有符合您需求的解決方案。

如果您認為自己確實發現新的錯誤,或覺得 Google 地圖平台產品的現有功能無法滿足您的需求,則請使用 Google 地圖平台 Issue Tracker 工具。

將錯誤或新功能要求登錄到 Issue Tracker 之前,務必先確認目前還沒有任何人提過同樣的問題/要求。如果已經有人提出,您可以對該項目加上星號,告訴我們您對此有興趣,屆時就能收到最新消息通知。

Google 地圖平台的 API 如何使用網站 Cookie?

Maps SDK for Android 和 Maps SDK for iOS 會遵循 Google 隱私權政策來使用 Cookie,例如用來計算每日和過去 7 天的活躍使用者人數,以及防止服務濫用行為。這些 Cookie 不會與任何已登入的 Google 帳戶建立關聯,也不會隨著 API 呼叫收集到的其他資訊一起記錄下來。

我找不到問題的解答,該與誰聯絡?

Google 的開發人員關係維繫團隊成員常會在 Stack Overflow 上與大家交流;這是一個由程式設計人員合作編輯,專供同業提問和尋找解答的網站。如果您有 Google 地圖應用程式開發以及維護等方面的問題,這個網站可以提供最佳的技術諮詢。如要進一步瞭解如何在 Stack Overflow 上發問,請參閱這個支援網頁。

為確保過程順利進行,請求協助時,不妨運用以下幾個小秘訣:

  • 先搜尋目前的討論內容。其他人可能已遇過類似問題,並且已有解決方式。
  • 如果可以的話,請附上您的網站連結。如果程式碼不容易在線上檢視,也可只張貼程式碼片段。
  • 提供所有相關資訊,包括瀏覽器版本、錯誤,以及其他有助排解問題的相關事證。

錯誤和疑難排解

這個錯誤代表什麼意義?

如果載入或執行 Google Maps API 時發生錯誤,請參考下列連結的錯誤代碼說明:

我的地圖顏色看起來比平常深,為什麼會這樣?

在某些情況下,地圖顏色可能會變得比較深 (有點像「負片」效果的街景服務圖片),而且會有「僅供開發使用」浮水印。這通常代表有 API 金鑰或帳單方面的問題。如要使用 Google 地圖平台產品,您必須具備帳單帳戶,且所有要求一律應包含有效的 API 金鑰。下列流程可協助您排解這個問題:


如何解決錯誤代碼為 OVER_DAILY_LIMITOVER_QUERY_LIMIT 的問題?
系統傳回這些錯誤代碼的原因可能如下:

如要使用 Google 地圖平台產品,您必須具備帳單帳戶,且所有要求一律應包含有效的 API 金鑰。如要解決這個問題,請按照下列步驟操作:

如何解決錯誤代碼為 kGMSPlacesRateLimitExceeded9005 PLACES_API_RATE_LIMIT_EXCEEDED 的問題?
如果您看到 kGMSPlacesRateLimitExceeded9005 PLACES_API_RATE_LIMIT_EXCEEDED,代表您用的是已經淘汰的 Places SDK for Android 或 Places SDK for iOS 版本。請前往 https://goo.gle/places-sdk-deprecation 瞭解詳情,並取得新版 SDK。
如何解決「這個 IP、網站或行動應用程式未獲權使用此 API 金鑰」的錯誤?

有很多情況都可能會造成這個錯誤:

  • 您對 API 金鑰啟用了 IP 位址 (伺服器) 限制,但有未經授權的 IP 位址嘗試提出要求。
  • 您對 API 金鑰啟用了 HTTP 參照網址 (網站) 限制,但有未經授權的參照網址嘗試提出要求。
  • 您設定了套件名稱及指紋,藉此對 Android 應用程式進行使用限制,但有未經授權的 Android 應用程式嘗試提出要求。
  • 您指定了軟體包 ID,藉此限制來自 iOS 應用程式的要求,但有未經授權的 iOS 應用程式嘗試提出要求。
  • 當您使用任一網路服務 API,而其中的 API 金鑰含有 HTTP 參照網址限制,就有可能導致這項錯誤。傳送至這些 API 的要求應識別為具有 IP 位址限制的 API 金鑰,因此,請將金鑰限制類型從 HTTP 參照網址變更為 IP 位址限制。 如要進一步瞭解如何限制 API 金鑰,請參閱 API 金鑰最佳做法

查看及編輯 API 金鑰憑證

如要查看 API 金鑰及管理限制,請按照下列步驟操作:

  1. 前往 Cloud Console 的「憑證」頁面
  2. 選取您要查看的 API 金鑰所屬的專案。
  3. 如要查看憑證詳細資料 (包括對該金鑰設下的任何限制),請在 API 金鑰清單中按一下金鑰名稱。
  4. 系統會針對您選取的 API 金鑰,顯示完整憑證,包括您為金鑰設定的任何限制。您可以在這裡視需要變更、刪除或更新限制。
如何解決「具有參照連結限制的 API 金鑰無法搭配此 API 使用」的錯誤?

您目前正在使用網路服務 API,而其中的 API 金鑰含有 HTTP 參照網址限制。基於安全考量,網路服務 API 必須使用具有 IP 位址限制的 API 金鑰。因此,請將金鑰限制類型從 HTTP 參照網址限制變更為 IP 位址限制。或者,如果您的金鑰已搭配 Maps JavaScript API 使用,則請建立新的 API 金鑰。

Google 地圖平台服務

我需要將地址轉換成經緯度的格式組合,Google 地圖平台是否支援此功能?

是,我們支援此功能。這個程序稱為「地理編碼」,Maps JavaScript API 包含用於執行地理編碼服務的類別:google.maps.Geocoder

此外,Google 也提供 Geocoding API,其中包含的 REST 介面能夠以 JSON 和 XML 格式回應。

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

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

地理編碼的準確性可能因國家/地區而異,建議您使用傳回的 location_type 欄位來判斷結果是否適用於您的應用程式。請注意,您能夠使用的地理編碼資料取決於我們與資料提供者之間的合約,因此可能會隨時變動。

為什麼 Google 地圖平台地理編碼器提供的地點與 Google 地圖上的不同?

API 和 Google 地圖的地理編碼器有時會使用不同的資料集 (視國家/地區而定)。API 地理編碼器偶爾會有資料更新,因此一段時間過後,您看到的結果可能會有所變更或改善。

如何設定我的地理編碼器查詢格式,才能盡可能提高要求的成功率?

地理編碼器的主要用途為轉換街道地址,將其對應至地理座標。 因此,我們建議您根據下列指南設定地理編碼要求格式,以盡可能提升查詢的成功率:

  • 按照相關國家/地區郵政服務使用的格式來指定地址。
  • 不要指定額外的地址項目 (例如相關國家/地區郵政服務未納入地址定義的公司名稱、單位號碼、樓層號碼或套房號碼),否則會導致傳回含有 ZERO_RESULTS 的回應。
  • 請按照這裡指定的格式來設定 plus code (加號在網址中會逸出為 %2B,空格則逸出為 %20):
    • 全球代碼是 4 個字元的區碼,加上 6 個字元以上的地區代碼 (例如 849VCWC8+R9 為 849VCWC8%2BR9)。
    • 複合代碼是 6 個字元以上的地區代碼,加上明確的位置 (例如 CWC8+R9 Mountain View, CA, USA 為 CWC8%2BR9%20Mountain%20View%20CA%20USA)。
  • 如果可能的話,建議使用建築物的街道號碼,而非建築物名稱。
  • 如果可能的話,建議使用街道號碼的地址,而非交叉路口街道。
  • 不要提供「建議」,例如附近地標。
如何設定美國編號公路的地址格式,以便進行地理編碼?

Google 地圖平台地理編碼器要求按以下地址格式來指定美國編號的公路:

  • 郡級道路: "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 地圖平台提供行車路線?

Directions API 可讓您提供單一和多段路程的行車路線。您可以透過路徑規劃選項,指定交通方式 (開車)、單一或多組路徑和相關限制 (避開收費道路) 來規劃路線。此服務的格式如下:

哪些國家/地區可以使用行車路線功能?

如要查看 Google 地圖平台產品中目前支援行車路線功能的國家/地區,請參閱 Google 地圖涵蓋資料。 請注意,您能夠使用的行車路線資料取決於我們與資料提供者之間的合約,因此可能會隨時變動。

哪些國家/地區可以使用大眾運輸路線功能?

Google 地圖路線規劃服務 (包含 Directions APIDistance Matrix API) 支援 大眾運輸涵蓋範圍清單 (日本除外) 中列的所有大眾運輸服務提供者。

Maps JavaScript API 支援哪些 KML 和 GeoRSS 功能?

Maps JavaScript API 中的 KmlLayer 類別可讓開發人員將 KML/KMZ 和 GeoRSS 檔案疊加在地圖上。相關說明文件與範例請參閱這裡

使用 Maps JavaScript API 的 KmlLayer 類別顯示 KML 時,KML 大小和複雜度有什麼限制?

有關使用 KmlLayer 類別顯示 KML 時,KML 的大小和複雜度限制,請參閱這裡的資訊:

如何在地圖上算繪由內部網路網站代管的 KML 檔案?

在 Maps JavaScript API 中產生 KML 疊加層的 KmlLayer 類別,會使用 Google 代管的服務來擷取和剖析 KML 檔案,以進行算繪。因此,如果 KML 檔案不是託管於可公開存取的網址,或者需要驗證才能存取,那麼這些檔案就無法顯示。

如果您要開發的應用程式是使用由內部網路網站代管的 KML 檔案,建議您採用第三方 JavaScript 程式庫,在用戶端算繪 KML 檔案。由於 KML 檔案是透過瀏覽器進行分析,因此效能可能會低於使用 KmlLayer 類別分析的效能。

Maps Static API 支援的路徑端點或標記數量上限是多少?

Static Maps API 支援的標記或路徑端點數量無上限。如果使用自訂圖示,每次提交要求只能指定最多 5 個不同的圖示,但每個圖示在地圖上都能多次使用。

請注意,Maps Static API 的網址長度上限大約為 8,192 個字元,因此限制了標記和路徑端點的數量,其原本取決於在指定每個經緯度組合時,所使用的小數位數。如要進一步瞭解使用的小數位數與地球上的地點精確性有何關係,請參閱維基百科的 Decimal Degrees 一文。

為何無法在特定國家/地區使用 Google 地圖平台產品?

Maps API 不得在禁止領土/地區使用;請另外參閱《服務條款》。

如何回報 Google 基本地圖問題?
您可以透過 Google 地圖提供意見回饋,指出錯誤或遺漏的地圖資訊,例如:
  • 地址或標記位置有誤
  • 路名不正確
  • 單行道和雙向道資訊有誤
  • 道路繪製有誤
  • 道路已封閉
  • 道路不存在

如要修改地點或商家資訊,請提出修改建議

如果有基於法律因素而必須移除的 Google 地圖內容,請提交法律案件申請

如果是重大問題或要求本身具有時效性,請提交客服案件,並附上具體的問題描述。

系統如何針對使用 Maps JavaScript API 的服務監控成效?

部分用戶端功能旨在記錄成功或失敗,以便計算服務等級目標。在記錄服務等級目標資訊的呼叫中,這項資訊會透過 maps.googleapis.com/maps_api_js_slo/log 傳送至 Google。這項資訊包括使用中 Maps JavaScript API 的成功狀態、延遲時間和版本/管道。此外,系統可能會批次處理這些呼叫以提升成效。請注意,您可能需要在「內容安全性政策」中允許 maps.googleapis.com,確保系統不會在瀏覽器層級封鎖這些呼叫。例如:包含 HTTP 標頭的 Content-Security-Policy: default-src 'self' maps.googleapis.com;,或是包含 HTML 中繼標記的 <meta http-equiv="Content-Security-Policy" content="default-src 'self' maps.googleapis.com;">

Google Maps SDK for iOS

在 Xcode 12 中,無法正確建構要用於模擬工具的應用程式,要如何修正這個問題?

如要解決這個問題,請開啟 Xcode 專案版本設定,然後只針對「iOS 模擬工具」版本,將 arm64 新增到 Excluded Architectures

詳情請參閱下列 StackOverflow 討論串

如何解決「kGMSPlacesRateLimitExceeded」錯誤?
如果看到這個錯誤,代表您用的是已經淘汰的 Places SDK for iOS 版本。Places SDK for iOS 的 2.7.0 版已停用,且不再提供。請盡快更新應用程式以便使用最新版本。詳情請參閱遷移指南
我在使用 iOS 8.x 裝置進行偵錯時當機,該怎麼辦?

如果在搭載 iOS 8.x 的裝置偵錯時遇到問題,請按照下列步驟,在您執行中的 XCode 配置停用 GPU 畫格擷取:

  1. 在 XCode 中選擇 [Product] (產品)、[Scheme] (配置)、[Manage Schemes] (管理配置)
  2. 選取一個架構,然後選取 [Edit…] (編輯…)
  3. 將「GPU Frame Capture」(GPU 畫格擷取) 選項設為「Disabled」(停用)。請注意,部分裝置可能不會顯示這個選項。
圓邊角且較寬的螢幕對於 Google Maps iOS SDK 有何影響?

iPhone X 開始,iPhone 的螢幕外型設計有所改變,包括圓邊角、裝置頂部的感應器區域 (俗稱「瀏海」),以及螢幕底部用來存取主畫面的橫條。從 iOS 11.0 SDK 開始,Apple 新增了 Safe Area API,方便開發人員將元素固定在安全區域,以免超出新的螢幕畫面範圍而遭裁切。

Google Maps iOS SDK 提供許多視覺元素和控制項,例如室內挑選器及問題回報連結。在 2.4 版中,這些視覺元素和控制項可能會因為新的螢幕形狀而受到遮擋。如果裝置處於橫向模式,「瀏海」區域或 Home 鍵橫條可能就會擋到室內樓層挑選器。

Google Maps iOS SDK 2.5 版本自動修正了這些版面配置問題。在 iPhone X 或更高版本的系統上使用應用程式時,系統會增加 GMSMapViewGMSPanoramaView 的邊框間距,避免視覺元素遭到裁切。

根據預設,我們一律會加上邊框間距。Google Maps iOS SDK 假設該邊框間距是為了讓元素落在安全區域內而加上的設定。如果您在設計介面時即已考量到這點,並將所有元素都安排在安全區域內,那就不用另外做什麼處理。

如果您設計的介面不適用於我們的預設調整項,我們也在 GMSMapView 引進了新的屬性:paddingAdjustmentBehavior。GMSMapView 現在可讓您從「Always」(一律) (預設值)、「Automatic」(自動) 及「Never」(永不) 這三個邊框間距調整行為中挑選一個。

如果 GMSMapView 的邊框間距行為設為「Always」(一律),系統將一律對邊框間距增加安全區域插邊。這樣您在設計介面時,即可假設所有元素位置與安全區域的邊緣都會保持間距。這是預設值。

如果 GMSMapView 的邊框間距行為設為「Automatic」(自動),系統將一律從邊框間距或安全區域插邊兩者中,選擇較大的那個。這可讓您從螢幕邊緣增加邊框間距,而且也能確保所有元素都落在安全區域內。

如果 GMSMapView 的邊框間距行為設為「Never」(永不),系統將一律不會對邊框間距增加安全區域插邊;在版本 2.5 之前都是採取這種做法。如果您在設計邊框間距時已經考量到安全區域,或您認為系統有其他行為與您的介面不符,不妨選擇這個設定。 根據《Google 地圖平台服務條款》的規定,您有責任確保 Google 標誌和版權聲明會持續顯示在畫面上。

但相較之下,GMSPanoramaView 就沒有可選用的邊框間距屬性。這表示您無法進行調整,而 GMSPanoramaView 會一律套用所有必要的邊框間距,確保所有視覺元素都位於安全區域。

Google Maps SDK for Android

如何解決「9005 PLACES_API_RATE_LIMIT_EXCEEDED」錯誤?
如果看到這個錯誤,代表您用的是已經淘汰的 Places SDK for Android 版本。Places SDK for Android 的 Google Play 服務版本已停用,且不再提供。 請盡快更新應用程式,即可使用最新版本。詳情請參閱遷移指南

網址簽署

我可以使用 JavaScript 簽署網址嗎?

使用 JavaScript 簽署網址可能會向使用者暴露您的網址簽署密鑰,我們非常不建議這樣做。因此,請僅使用伺服器端元件產生簽章。

為什麼我的 Maps API 網路服務要求收到「HTTP 403 禁止」(HTTP 403 Forbidden) 的回應訊息?

HTTP 403 回應表示有權限問題,或許是因為無法針對該要求進行簽章驗證。可能的原因如下:

  1. 簽章不正確:指定的簽章無法用於這個要求。
  2. 該要求指定了 Google 地圖平台付費方案的 API 金鑰,但並未指定簽章;而您所呼叫的服務規定以 API 金鑰提出的要求都必須隨附有效簽章。
  3. 已指定簽章,但未指定相關聯的 Google 地圖平台付費方案 API 金鑰。