使用 API 金鑰

事前準備

您必須擁有已連結帳單帳戶的專案,並啟用 Places SDK for Android,才能開始使用 Places SDK for Android。請參閱這篇文章,進一步瞭解如何在 Cloud 控制台中完成相關設定。

建立 API 金鑰

API 金鑰是一組專屬 ID,用於驗證與您專案有關的使用權限及帳單處理要求。您的專案至少要有一個相關聯的 API 金鑰。

建立 API 金鑰的方法如下:

控制台

  1. 前往「Google Maps Platform」(Google 地圖平台) >「Credentials」(憑證) 頁面。

    前往「Credentials」(憑證) 頁面

  2. 在「Credentials」(憑證) 頁面上,點選「Create credentials」(建立憑證) >「API key」(API 金鑰)
    「API key created」(建立的 API 金鑰) 對話方塊會顯示您新建立的 API 金鑰。
  3. 按一下「Close」(關閉)。
    新建立的 API 金鑰會出現在「Credentials」(憑證) 頁面的「API keys」(API 金鑰) 下方。
    (別忘了先為 API 金鑰設定限制,然後才在正式環境中使用)

Cloud SDK

gcloud alpha services api-keys create \
    --project "PROJECT" \
    --display-name "DISPLAY_NAME"

進一步瞭解 Google Cloud SDKCloud SDK 安裝和下列指令:

限制 API 金鑰

Google 強烈建議您設定限制,只允許將 API 金鑰用於應用程式需要的 API。限制 API 金鑰可避免不必要的請求使用 API 金鑰,有助提升應用程式的安全性。詳情請參閱「API 安全性最佳做法」。

當您限制 API 金鑰時,必須提供用於簽署應用程式的簽署金鑰 SHA-1 憑證指紋。憑證類型分為兩種:

  • 偵錯憑證:請僅將這種憑證類型用於您要測試的應用程式和其他不在實際生產環境使用的程式碼。請勿嘗試發布以偵錯憑證簽署的應用程式。執行偵錯版本時,Android SDK 工具會自動產生這個憑證。
  • 發布憑證:準備將應用程式發布到應用程式商店時,請使用這個憑證。執行發布子版本時,Android SDK 工具會產生這個憑證。

如要進一步瞭解 Android 應用程式和憑證,請參閱「簽署應用程式」指南。

如需查看簽署憑證指紋的操作說明,請見下方參考資料:

  • 如果您使用的是 Play 應用程式簽署,請參閱「與 API 供應商合作」一文。
  • 如果您管理自己的簽署金鑰,請參閱「自行簽署應用程式」一文,或是參考您建構環境適用的操作說明。

限制 API 金鑰的方法如下:

控制台

  1. 前往「Google 地圖平台」>「憑證」頁面。

    前往「憑證」頁面

  2. 選取要設定限制的 API 金鑰,畫面隨即顯示 API 金鑰屬性頁面。
  3. 在「金鑰限制」下方,設定下列限制:
    • 應用程式限制:
      1. 選取「Android 應用程式」
      2. 按一下「+ 新增套件名稱和指紋」
      3. 輸入您的套件名稱和 SHA-1 憑證指紋,例如:
        com.example.android.mapexample
        BB:0D:AC:74:D3:21:E1:43:67:71:9B:62:91:AF:A1:66:6E:44:5D:75
    • API 限制:
      1. 按一下「限制金鑰」
      2. 從「選取 API」下拉式選單中選取「Places API」或「Places API (New)」,但兩者只能擇一。如果選單未列出 Places API,則您需要先enable該 API。
  4. 如要完成變更,請按一下「儲存」

Cloud SDK

Places SDK for Android (新推出)

列出現有金鑰。

gcloud services api-keys list --project="PROJECT"

清除現有金鑰的目前限制。

gcloud alpha services api-keys update "projects/PROJECT/keys/KEY_ID" \
    --clear-restrictions

設定現有金鑰的新限制。

gcloud alpha services api-keys update "projects/PROJECT/keys/KEY_ID" \
    --api-target="places.googleapis.com"
    --allowed-application="sha1_fingerprint=SHA1_FINGERPRINT,package_name=ANDROID_PACKAGE_NAME"

進一步瞭解 Google Cloud SDKCloud SDK 安裝和下列指令:

Places SDK for Android

列出現有金鑰。

gcloud services api-keys list --project="PROJECT"

清除現有金鑰的目前限制。

gcloud alpha services api-keys update "projects/PROJECT/keys/KEY_ID" \
    --clear-restrictions

設定現有金鑰的新限制。

gcloud alpha services api-keys update "projects/PROJECT/keys/KEY_ID" \
    --api-target="places-backend.googleapis.com"
    --allowed-application="sha1_fingerprint=SHA1_FINGERPRINT,package_name=ANDROID_PACKAGE_NAME"

進一步瞭解 Google Cloud SDKCloud SDK 安裝和下列指令:

後續主題

取得 API 金鑰後,接下來請按照「設定 Android Studio 專案」一文中的說明來建立及設定專案。