Uzyskiwanie identyfikatora klienta OAuth 2.0

Przegląd

Aby korzystać z Google Fit na Androida, musisz mieć identyfikator klienta OAuth 2.0 dla aplikacji na Androida.

Wszystkie aplikacje na Androida są podpisane certyfikatem cyfrowym, do którego masz klucz prywatny. Więcej informacji o certyfikatach cyfrowych znajdziesz w przewodniku po podpisywaniu aplikacji na Androida.

Identyfikatory klienta OAuth na Androida są powiązane z konkretnymi parami certyfikatów i pakietów. Potrzebujesz tylko jednego identyfikatora dla każdego certyfikatu, niezależnie od liczby użytkowników aplikacji.

Uzyskanie identyfikatora aplikacji wymaga wykonania kilku czynności. Poniżej opisujemy te kroki.

  1. Znajdź informacje o certyfikacie aplikacji.
  2. utworzyć lub zmodyfikować projekt w Konsoli interfejsów API Google,
  3. Poproś o identyfikator klienta OAuth 2.0.

Znajdowanie informacji o certyfikacie aplikacji

Klucz interfejsu API jest oparty na skróconej formie certyfikatu cyfrowego aplikacji, znanej jako odcisk cyfrowy SHA-1. Aby wyświetlić odcisk cyfrowy SHA-1 certyfikatu, najpierw upewnij się, że używasz właściwego certyfikatu. Możesz mieć 2 certyfikaty:

  • Certyfikat debugowania: narzędzia Android SDK Tools generują ten certyfikat automatycznie podczas tworzenia kompilacji do debugowania. Używaj tego certyfikatu tylko w aplikacjach, które testujesz. Nie próbuj publikować aplikacji podpisanej certyfikatem debugowania. Certyfikat debugowania jest szczegółowo opisany w sekcji Podpisywanie w trybie debugowania w dokumentacji dla deweloperów aplikacji na Androida.
  • Certyfikat wersji: narzędzia Android SDK generują ten certyfikat podczas tworzenia kompilacji do publikacji. Możesz też wygenerować ten certyfikat za pomocą programu keytool. Użyj tego certyfikatu, gdy będziesz gotowy(-a) do opublikowania aplikacji.

Aby wyświetlić odcisk cyfrowy SHA-1 certyfikatu, wykonaj te czynności, używając programu keytool z parametrem -v. Więcej informacji o narzędziu Keytool znajdziesz w dokumentacji Oracle.

Certyfikat debugowania

Wyświetlam odcisk cyfrowy certyfikatu debugowania

  1. Znajdź plik magazynu kluczy debugowania. Nazwa pliku to debug.keystore. Jest on tworzony podczas pierwszej kompilacji projektu. Domyślnie jest on przechowywany w tym samym katalogu co pliki urządzenia wirtualnego z Androidem (AVD):

    • macOS i Linux: ~/.android/
    • Windows Vista i Windows 7: C:\Users\your_user_name\.android\
  2. Podaj odcisk cyfrowy SHA-1:

    • W przypadku systemu Linux lub macOS otwórz okno terminala i wpisz:

      keytool -list -v -keystore ~/.android/debug.keystore -alias androiddebugkey -storepass android -keypass android
    • W przypadku systemów Windows Vista i Windows 7 uruchom:

      keytool -list -v -keystore "%USERPROFILE%\.android\debug.keystore" -alias androiddebugkey -storepass android -keypass android

Dane wyjściowe powinny być podobne do tych:

Alias name: androiddebugkey
Creation date: Jan 01, 2013
Entry type: PrivateKeyEntry
Certificate chain length: 1
Certificate[1]:
Owner: CN=Android Debug, O=Android, C=US
Issuer: CN=Android Debug, O=Android, C=US
Serial number: 4aa9b300
Valid from: Mon Jan 01 08:04:04 UTC 2013 until: Mon Jan 01 18:04:04 PST 2033
Certificate fingerprints:
     MD5:  AE:9F:95:D0:A6:86:89:BC:A8:70:BA:34:FF:6A:AC:F9
     SHA1: BB:0D:AC:74:D3:21:E1:43:07:71:9B:62:90:AF:A1:66:6E:44:5D:75
     Signature algorithm name: SHA1withRSA
     Version: 3
Certyfikat wersji

Wyświetlam odcisk cyfrowy certyfikatu wersji

  1. Znajdź plik magazynu kluczy certyfikatu wersji. Nie ma domyślnej lokalizacji ani nazwy magazynu kluczy wersji. Jeśli nie określisz go podczas kompilowania aplikacji do opublikowania, kompilacja pozostawi plik .apk niepodpisany i będziesz musiał go podpisać, zanim będzie można go opublikować. W przypadku certyfikatu wersji potrzebujesz też aliasu certyfikatu oraz haseł do magazynu kluczy i certyfikatu. Aby wyświetlić listę aliasów wszystkich kluczy w magazynie kluczy, wpisz:

    keytool -list -keystore your_keystore_name

    Zastąp tekst your_keystore_name pełną i jednoznaczną ścieżką i nazwą magazynu kluczy, razem z rozszerzeniem .keystore. Pojawi się prośba o podanie hasła do magazynu kluczy. Następnie keytool wyświetli wszystkie aliasy w magazynie kluczy.

  2. Wpisz w terminalu lub wierszu polecenia:

    keytool -list -v -keystore your_keystore_name -alias your_alias_name

    Zastąp tekst your_keystore_name pełną i jednoznaczną ścieżką i nazwą magazynu kluczy, razem z rozszerzeniem .keystore. Zastąp tekst your_alias_name aliasem przypisanym do certyfikatu podczas jego tworzenia.

Dane wyjściowe powinny być podobne do tych:

Alias name: <alias_name>
Creation date: Feb 02, 2013
Entry type: PrivateKeyEntry
Certificate chain length: 1
Certificate[1]:
Owner: CN=Android Debug, O=Android, C=US
Issuer: CN=Android Debug, O=Android, C=US
Serial number: 4cc9b300
Valid from: Mon Feb 02 08:01:04 UTC 2013 until: Mon Feb 02 18:05:04 PST 2033
Certificate fingerprints:
    MD5:  AE:9F:95:D0:A6:86:89:BC:A8:70:BA:34:FF:6B:AC:F9
    SHA1: BB:0D:AC:74:D3:21:E1:43:67:71:9B:62:90:AF:A1:66:6E:44:5D:75
    Signature algorithm name: SHA1withRSA
    Version: 3

Wiersz zaczynający się od SHA1 zawiera odcisk cyfrowy SHA-1 certyfikatu. Odcisk cyfrowy to ciąg 20 dwucyfrowych liczb szesnastkowych oddzielonych dwukropkami.

Poproś o identyfikator klienta OAuth 2.0 w Konsoli interfejsów API Google

Wykonaj te czynności, aby utworzyć lub zmodyfikować projekt aplikacji w Konsoli interfejsów API Google, włączyć interfejs Fitness API i poprosić o identyfikator klienta OAuth 2.0.

Jeśli chcesz, aby proces został przeprowadzony automatycznie, a interfejs Fitness API został włączony, kliknij

Uzyskiwanie identyfikatora klienta

Możesz też wykonać te czynności, aby włączyć Fitness API w Konsoli interfejsów API Google i uzyskać identyfikator klienta OAuth 2.0.

  1. Otwórz Konsolę interfejsów API Google.
  2. Wybierz projekt lub utwórz nowy. Użyj tego samego projektu w przypadku wersji aplikacji na Androida i REST.
  3. Kliknij Dalej, aby włączyć Fitness API.
  4. Kliknij Przejdź do danych logowania.
  5. Kliknij Nowe dane logowania, a następnie wybierz Identyfikator klienta OAuth.
  6. W sekcji Typ aplikacji wybierz Android.
  7. W wyświetlonym oknie wpisz odcisk cyfrowy SHA-1 i nazwę pakietu aplikacji. Na przykład:

    BB:0D:AC:74:D3:21:E1:43:67:71:9B:62:91:AF:A1:66:6E:44:5D:75

    com.example.android.fit-example

  8. Kliknij Utwórz. Nowy identyfikator klienta Android OAuth 2.0 i klucz tajny pojawią się na liście identyfikatorów projektu. Identyfikator klienta OAuth 2.0 to ciąg znaków, który wygląda mniej więcej tak:

    780816631155-gbvyo1o7r2pn95qc4ei9d61io4uh48hl.apps.googleusercontent.com