Обзор
Чтобы использовать Google Fit для Android, вам понадобится идентификатор клиента OAuth 2.0 для приложений Android.
Все приложения Android подписаны цифровым сертификатом, закрытый ключ которого находится у вас. Подробнее о цифровых сертификатах см. в руководстве Android по подписи приложений .
Идентификаторы клиентов OAuth для Android привязаны к определённым парам сертификат/пакет. Вам нужен только один идентификатор для каждого сертификата, независимо от количества пользователей приложения.
Получение идентификатора для вашего приложения требует нескольких шагов. Эти шаги описаны ниже.
- Найдите информацию о сертификате вашего приложения.
- Создайте или измените проект в консоли Google API.
- Запросите идентификатор клиента OAuth 2.0.
Найдите информацию о сертификате вашего приложения
Ключ API основан на краткой форме цифрового сертификата вашего приложения, известной как его отпечаток SHA-1 . Чтобы отобразить отпечаток SHA-1 для вашего сертификата, сначала убедитесь, что вы используете правильный сертификат. У вас может быть два сертификата:
- Отладочный сертификат : инструменты Android SDK автоматически генерируют этот сертификат при отладочной сборке. Используйте этот сертификат только с приложениями, которые вы тестируете. Не пытайтесь опубликовать приложение, подписанное отладочным сертификатом. Отладочный сертификат подробно описан в разделе «Подписание в режиме отладки» в документации для разработчиков Android.
- Сертификат выпуска : инструменты Android SDK генерируют этот сертификат при сборке выпуска. Вы также можете сгенерировать этот сертификат с помощью программы
keytool
. Используйте этот сертификат, когда будете готовы выпустить приложение.
Чтобы отобразить отпечаток SHA-1 сертификата с помощью программы keytool
с параметром -v
, выполните следующие действия. Подробнее о Keytool см. в документации Oracle .
Отображение отпечатка отладочного сертификата
Найдите файл хранилища ключей отладки. Имя файла —
debug.keystore
, он создаётся при первой сборке проекта. По умолчанию он хранится в том же каталоге, что и файлы виртуального устройства Android (AVD):- macOS и Linux :
~/.android/
- Windows Vista и Windows 7 :
C:\Users\your_user_name\.android\
- macOS и Linux :
Перечислите отпечаток SHA-1:
Для Linux или macOS откройте окно терминала и введите следующее:
keytool -list -v -keystore ~/.android/debug.keystore -alias androiddebugkey -storepass android -keypass android
Для Windows Vista и Windows 7 выполните:
keytool -list -v -keystore "%USERPROFILE%\.android\debug.keystore" -alias androiddebugkey -storepass android -keypass android
Вы должны увидеть примерно такой вывод:
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
Отображение отпечатка сертификата выпуска
Найдите файл хранилища ключей сертификата выпуска. Для хранилища ключей выпуска нет местоположения или имени по умолчанию. Если вы не укажете их при сборке приложения для выпуска, ваш
.apk
файл останется неподписанным, и вам придётся подписать его перед публикацией. Для сертификата выпуска вам также понадобятся псевдоним сертификата и пароли для хранилища ключей и самого сертификата. Вы можете получить список псевдонимов всех ключей в хранилище, выполнив следующую команду:keytool -list -keystore your_keystore_name
Замените
your_keystore_name
на полный путь и имя хранилища ключей, включая расширение.keystore
. Вам будет предложено ввести пароль хранилища ключей. После этогоkeytool
отобразит все псевдонимы в хранилище ключей.Введите в терминале или командной строке следующее:
keytool -list -v -keystore your_keystore_name -alias your_alias_name
Замените
your_keystore_name
на полный путь и имя хранилища ключей, включая расширение.keystore
. Заменитеyour_alias_name
на псевдоним, назначенный сертификату при его создании.
Вы должны увидеть примерно такой вывод:
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
Строка, начинающаяся с SHA1
, содержит отпечаток сертификата SHA-1. Отпечаток представляет собой последовательность из 20 двузначных шестнадцатеричных чисел, разделённых двоеточиями.
Запросите идентификатор клиента OAuth 2.0 в консоли API Google
Выполните следующие действия, чтобы создать или изменить проект для вашего приложения в консоли API Google, включить Fitness API и запросить идентификатор клиента OAuth 2.0.
Если вы хотите получить пошаговые инструкции по процессу и автоматически активировать Fitness API, нажмите
Получить идентификатор клиента
В качестве альтернативы выполните следующие действия, чтобы включить Fitness API в консоли API Google и получить идентификатор клиента OAuth 2.0.
- Перейдите в консоль API Google .
- Выберите проект или создайте новый. Используйте один и тот же проект для версий Android и REST вашего приложения.
- Нажмите «Продолжить» , чтобы включить Fitness API.
- Нажмите Перейти к учетным данным .
- Нажмите Новые учетные данные , затем выберите Идентификатор клиента OAuth .
- В поле Тип приложения выберите Android .
В открывшемся диалоговом окне введите отпечаток SHA-1 и имя пакета вашего приложения. Например:
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
Нажмите «Создать» . Ваши новые идентификатор и секретный ключ клиента Android OAuth 2.0 появятся в списке идентификаторов вашего проекта. Идентификатор клиента OAuth 2.0 — это строка символов, например:
780816631155-gbvyo1o7r2pn95qc4ei9d61io4uh48hl.apps.googleusercontent.com