Aby korzystać z interfejsu Google Awareness API, musisz dodać do aplikacji klucz interfejsu Google API. Potrzebny Ci będzie klucz interfejsu Android API.
Wszystkie aplikacje na Androida są podpisywane certyfikatem cyfrowym, do którego masz klucz prywatny. Więcej informacji o certyfikatach cyfrowych znajdziesz w przewodniku Androida na temat podpisywania aplikacji.
Klucze interfejsu Android API są powiązane z konkretnymi parami certyfikat–pakiet. Do każdego certyfikatu potrzebujesz tylko jednego klucza, niezależnie od tego, ilu użytkowników korzysta z aplikacji.
Aby uzyskać klucz do aplikacji, musisz wykonać kilka czynności. Są one szczegółowo opisane w tym przewodniku, a ich podsumowanie znajdziesz poniżej:
- Uzyskaj informacje o certyfikacie aplikacji.
- Zarejestruj projekt w Google Developers Console i dodaj interfejs User Context API jako usługę dla projektu.
- Poproś o klucz.
- Dodaj klucz do aplikacji. Aby to zrobić, dodaj element do pliku manifestu aplikacji.
Znajdowanie informacji o certyfikacie aplikacji
Klucz interfejsu API jest oparty na skróconej wersji certyfikatu cyfrowego aplikacji, czyli na jego odcisku cyfrowym SHA-1. Aby wyświetlić odcisk cyfrowy SHA-1 certyfikatu, najpierw upewnij się, że używasz właściwego certyfikatu. Możesz mieć do wyboru te 2 certyfikaty:
- Certyfikat debugowania: narzędzia Android SDK generują ten certyfikat automatycznie podczas kompilacji do debugowania. Używaj tego certyfikatu tylko w przypadku aplikacji, które testujesz. Nie próbuj publikować aplikacji podpisanej certyfikatem debugowania. Certyfikat debugowania jest szczegółowo opisany w sekcji Podpisywanie kompilacji do debugowania w dokumentacji dla programistów aplikacji na Androida.
- Certyfikat wersji: narzędzia Android SDK Tools generują ten certyfikat podczas 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.
Więcej informacji o program0/}ie keytool, znajdziesz w jego
dokumentacji Oracle.
Wyświetlanie odcisku cyfrowego certyfikatu debugowania
Aby wyświetlić odcisk cyfrowy SHA-1 certyfikatu, użyj programu keytool z parametrem -v, aby wyświetlić
Aby to zrobić:
Znajdź plik magazynu kluczy debugowania. Nazwa pliku to
debug.keystore. Jest on tworzony przy pierwszej kompilacji projektu. Domyślnie jest on przechowywany w tym samym katalogu co pliki Android Virtual Device (AVD):- OS X i Linux:
~/.android/ - Windows Vista i Windows 7:
C:\Users\your_user_name\.android\
- OS X i Linux:
Wyświetl odcisk cyfrowy SHA-1:
W przypadku systemu Linux lub OS X 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
Zostaną wyświetlone dane wyjściowe 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
Wyświetlanie odcisku cyfrowego certyfikatu wersji
Aby wyświetlić odcisk cyfrowy SHA-1 certyfikatu, użyj programu keytool z parametrem -v, aby wyświetlić
Aby to zrobić:
- 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 publikacji, kompilacja pozostawi plik
.apkniepodpisany i przed opublikowaniem musisz go podpisać. W przypadku certyfikatu wersji potrzebujesz też aliasu certyfikatu oraz haseł do magazynu kluczy i certyfikatu. Aby wyświetlić aliasy wszystkich kluczy w magazynie kluczy, wpisz:
keytool -list -keystore your_keystore_name
- Zastąp tekst
your_keystore_namepełną i jednoznaczną ścieżką i nazwą magazynu kluczy. Dołącz rozszerzenie.keystore. Gdy pojawi się prośba, wpisz hasło do magazynu kluczy. Następnie,keytoolwyświetli wszystkie aliasy w magazynie kluczy. W terminalu lub wierszu polecenia wpisz:
keytool -list -v -keystore your_keystore_name -alias your_alias_name
- Zastąp tekst
your_keystore_namepełną i jednoznaczną ścieżką i nazwą magazynu kluczy. Dołącz rozszerzenie.keystore. - Zastąp tekst
your_alias_namealiasem przypisanym do certyfikatu podczas jego tworzenia.
Zostaną wyświetlone dane wyjściowe 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.
Uzyskiwanie klucza interfejsu API w Google Developers Console
Aby rozpocząć korzystanie z interfejsu Google Awareness API, kliknij przycisk Zamów klucz. Przekieruje Cię on do Google Developers Console, która przeprowadzi Cię przez ten proces i automatycznie aktywuje interfejs Awareness API.
Możesz też wykonać te czynności, aby uzyskać klucz interfejsu API:
- Otwórz Google Developers Console.
- Wybierz projekt lub utwórz nowy.
- Kliknij Dalej , aby włączyć interfejs Awareness API.
Na stronie „Dane logowania” utwórz klucz Androida i ustaw dane logowania interfejsu API.
W oknie „Utwórz klucz” musisz ograniczyć użycie do aplikacji na Androida. Aby to zrobić, wpisz odcisk cyfrowy SHA-1 i nazwę pakietu aplikacji, tak jak w tym przykładzie:
BB:0D:AC:74:D3:21:E1:43:67:71:9B:62:91:AF:A1:66:6E:44:5D:75 com.example.android.awareness-exampleKliknij Utwórz. Nowy klucz interfejsu Android API pojawi się na liście kluczy interfejsu API dla Twojego projektu. Klucz interfejsu API to ciąg znaków, np.:
AIzaSyBdVl-cTICSwYKrZ95LoVuw7dbMuDt1KG0
Teraz, gdy masz już klucz interfejsu API, możesz dodać go do pliku manifestu aplikacji, jak opisano w przewodniku dla początkujących.
Aktywowanie dodatkowych interfejsów API
Interfejs Awareness API umożliwia dostęp do różnych typów danych kontekstowych, takich jak beacony. Aby korzystać z tych typów, musisz włączyć odpowiednie interfejsy API w Google Developers Console.
| Usługa | Metody interfejsu Awareness API | Interfejs API do włączenia |
|---|---|---|
| Beacons | SnapshotApi.getBeaconState(),
FenceApi.BeaconFence |
Nearby Messages API |