Korzystanie z kluczy interfejsu API

Zanim zaczniesz

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

Tworzenie kluczy interfejsu API

Klucz interfejsu API to unikalny identyfikator służący do uwierzytelniania żądań powiązanych z Twoim projektem na potrzeby wykorzystania i rozliczeń. Musisz mieć co najmniej 1 klucz interfejsu API powiązany z projektem.

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 interfejsu API pojawi się nowo utworzony klucz interfejsu API.
  3. Kliknij Zamknij.
    Nowy klucz interfejsu API znajduje się na stronie Dane logowania w sekcji Klucze interfejsu API.
    (Pamiętaj o ograniczeniu dostępu do klucza interfejsu API przed użyciem go w środowisku produkcyjnym).

(pakiet) SDK Cloud

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

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

Ograniczanie kluczy interfejsu API

Google zdecydowanie zaleca ograniczenie kluczy interfejsu API przez ograniczenie ich używania tylko do tych interfejsów API, które są potrzebne aplikacji. Ograniczenie kluczy interfejsu API zwiększa bezpieczeństwo aplikacji przez ochronę przed niechcianymi żądaniami. Więcej informacji znajdziesz w artykule na temat sprawdzonych metod zapewniania bezpieczeństwa interfejsów API.

Jeśli ograniczasz swój klucz interfejsu 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, i innego kodu nieprodukcyjnego. Nie próbuj publikować aplikacji, która jest podpisana certyfikatem debugowania. Narzędzia pakietu Android SDK generują ten certyfikat automatycznie podczas uruchamiania kompilacji do debugowania.
  • Certyfikat wersji: użyj tego certyfikatu, gdy wszystko będzie gotowe do opublikowania aplikacji w sklepie z aplikacjami. Narzędzia pakietu Android SDK generują ten certyfikat podczas uruchamiania kompilacji do wersji.

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

Poniżej znajdziesz instrukcje, jak znaleźć odcisk cyfrowy certyfikatu podpisywania:

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ę pakietu i odcisk palca.
      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 klucz.
      2. Z menu Wybierz interfejsy API wybierz Places API lub Places API (nowy), ale nie obie te opcje jednocześnie. Jeśli interfejsu Places API nie ma na liście, musisz go enable.
  4. Aby zastosować 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"

Usuń obecne ograniczenia istniejącego klucza.

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

Ustaw nowe ograniczenia istniejącego klucza.

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"

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

Pakiet SDK Miejsc na Androida

Wyświetl listę istniejących kluczy.

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

Usuń obecne ograniczenia istniejącego klucza.

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

Ustaw nowe ograniczenia istniejącego klucza.

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"

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

Co dalej

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