Korzystanie z kluczy interfejsu API

Zanim zaczniesz

Zanim zaczniesz korzystać z pakietu Places SDK na Androida, musisz mieć projekt z kontem rozliczeniowym i włączonym pakietem Places SDK na Androida. Więcej informacji znajdziesz w artykule Konfigurowanie w konsoli Google Cloud.

Tworzenie kluczy interfejsu API

Klucz interfejsu API to unikalny identyfikator używany do uwierzytelniania żądań powiązanych z projektem na potrzeby wykorzystania i płatności. Z projektem musi być powiązany co najmniej 1 klucz API.

Aby utworzyć klucz interfejsu API:

Konsola

  1. Otwórz stronę Google Maps Platform > Dane logowania.

    Otwórz stronę Dane logowania

  2. Na stronie Dane logowania kliknij Utwórz dane logowania > Klucz interfejsu API.
    W oknie Utworzono klucz API wyświetli się nowo utworzony klucz API.
  3. Kliknij Zamknij.
    Nowy klucz interfejsu API znajdziesz na stronie Dane logowania w sekcji Klucze API.
    (Pamiętaj, aby ograniczyć dostęp do klucza API przed użyciem go w produkcji).

Pakiet SDK Cloud

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

Dowiedz się więcej o pakiecie Google Cloud SDK, instalacji Cloud SDK i tych poleceniach:

Ograniczanie kluczy interfejsu API

Zdecydowanie zalecamy ograniczenie kluczy interfejsu API tylko do tych interfejsów API, które są potrzebne do działania aplikacji. Ograniczenie dostępu do kluczy interfejsu API zwiększa bezpieczeństwo aplikacji, chroniąc ją przed nieuzasadnionymi żądaniami. Więcej informacji znajdziesz w artykule Sprawdzone metody dotyczące bezpieczeństwa interfejsu API.

Aby ograniczyć dostęp do klucza API, musisz podać odcisk cyfrowy certyfikatu SHA-1 klucza podpisywania, który został użyty do podpisania aplikacji. Istnieją 2 typy certyfikatów:

  • Certyfikat debugowania: używaj tego typu certyfikatu tylko w przypadku aplikacji, które testujesz, oraz innego kodu niezwiązanego z wersją produkcyjną. Nie próbuj publikować aplikacji podpisanej certyfikatem debugowania. Narzędzia Android SDK generują ten certyfikat automatycznie podczas kompilacji debugowania.
  • Certyfikat wersji: użyj tego certyfikatu, gdy będziesz gotowy do opublikowania aplikacji w sklepie z aplikacjami. Narzędzia pakietu Android SDK generują ten certyfikat podczas uruchamiania wersji wydania.

Więcej informacji o podpisywaniu aplikacji na Androida i certyfikatach znajdziesz w przewodniku Podpisywanie aplikacji.

Instrukcje dotyczące znajdowania odcisku cyfrowego certyfikatu podpisywania znajdziesz w tych materiałach:

Aby ograniczyć klucz interfejsu API:

Konsola

  1. Otwórz stronę Google Maps Platform > Dane logowania.

    Otwórz stronę Dane logowania

  2. Wybierz klucz interfejsu API, dla którego chcesz ustawić ograniczenie. Pojawi się strona właściwości klucza interfejsu API.
  3. W sekcji Ograniczenia klucza ustaw te ograniczenia:
    • Ograniczenia aplikacji:
      1. Wybierz Aplikacje na Androida.
      2. Kliknij + Dodaj nazwę i odcisk palca pakietu.
      3. Wpisz nazwę pakietu i odcisk cyfrowy certyfikatu SHA-1. Na przykład:
        com.example.android.mapexample
        BB:0D:AC:74:D3:21:E1:43:67:71:9B:62:91:AF:A1:66:6E:44:5D:75
    • Ograniczenia interfejsów API:
      1. Kliknij Ogranicz dostęp do klucza.
      2. Z menu Wybierz interfejsy API wybierz Places API lub Places API (nowość), ale nie oba naraz. Jeśli interfejs Places API nie jest na liście, musisz go włączyć.
  4. Aby zatwierdzić zmiany, kliknij Zapisz.

Pakiet SDK Cloud

Pakiet SDK Miejsc na Androida (nowy)

Wyświetl listę istniejących kluczy.

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

usunąć istniejące ograniczenia dotyczące dotychczasowego klucza.

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

Ustaw nowe ograniczenia dla istniejącego klucza.

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

Dowiedz się więcej o pakiecie Google Cloud SDK, instalacji Cloud SDK i tych poleceniach:

Pakiet SDK Miejsc na Androida

Wyświetl listę istniejących kluczy.

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

usunąć istniejące ograniczenia dotyczące dotychczasowego klucza.

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

Ustaw nowe ograniczenia dla istniejącego klucza.

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

Dowiedz się więcej o pakiecie Google Cloud SDK, instalacji Cloud SDK i tych poleceniach:

Co dalej?

Gdy już masz klucz interfejsu API, utwórz i skonfiguruj projekt zgodnie z instrukcjami w artykule Konfigurowanie projektu w Android Studio.