Получите идентификатор клиента OAuth 2.0

Обзор

Чтобы использовать Google Fit для Android, вам потребуется идентификатор клиента OAuth 2.0 для приложений Android.

Все приложения для Android подписаны цифровым сертификатом, для которого у вас есть закрытый ключ. Дополнительные сведения о цифровых сертификатах см. в руководстве Android по подписанию приложений .

Идентификаторы клиентов Android OAuth связаны с определенными парами сертификат/пакет. Вам нужен только один идентификатор для каждого сертификата, независимо от того, сколько пользователей у вас есть для приложения.

Для получения идентификатора вашего приложения требуется несколько шагов. Эти шаги описаны ниже.

  1. Найдите информацию о сертификате вашего приложения.
  2. Создайте или измените проект в Google API Console.
  3. Запросите идентификатор клиента OAuth 2.0.

Найдите информацию о сертификате вашего приложения

Ключ API основан на сокращенной форме цифрового сертификата вашего приложения, известной как отпечаток SHA-1 . Чтобы отобразить отпечаток SHA-1 для вашего сертификата, сначала убедитесь, что вы используете правильный сертификат. У вас может быть два сертификата:

  • Сертификат отладки . Инструменты Android SDK автоматически генерируют этот сертификат при выполнении отладочной сборки. Используйте этот сертификат только с приложениями, которые вы тестируете. Не пытайтесь опубликовать приложение, подписанное сертификатом отладки. Сертификат отладки более подробно описан в разделе Подписание в режиме отладки в документации для разработчиков Android.
  • Сертификат выпуска . Инструменты Android SDK генерируют этот сертификат при сборке выпуска. Вы также можете сгенерировать этот сертификат с помощью программы keytool . Используйте этот сертификат, когда будете готовы выпустить свое приложение для всего мира.

Выполните следующие действия, чтобы отобразить отпечаток SHA-1 сертификата с помощью программы keytool с параметром -v . Дополнительные сведения о Keytool см. в документации Oracle .

Сертификат отладки

Отображение отпечатка сертификата отладки

  1. Найдите файл хранилища ключей отладки. Имя файла — debug.keystore , и он создается при первой сборке проекта. По умолчанию он хранится в том же каталоге, что и файлы вашего виртуального устройства Android (AVD):

    • macOS и Linux : ~/.android/
    • Windows Vista и Windows 7 : C:\Users\your_user_name\.android\
  2. Перечислите отпечаток 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
Сертификат выпуска

Отображение отпечатка сертификата выпуска

  1. Найдите файл хранилища ключей сертификата выпуска. Для хранилища ключей выпуска нет места или имени по умолчанию. Если вы не укажете его при сборке приложения для выпуска, сборка оставит ваш .apk неподписанным, и вам придется подписать его, прежде чем вы сможете его опубликовать. Для сертификата выпуска вам также потребуется псевдоним сертификата и пароли для хранилища ключей и сертификата. Вы можете перечислить псевдонимы для всех ключей в хранилище ключей, введя:

    keytool -list -keystore your_keystore_name

    Замените your_keystore_name полным путем и именем хранилища ключей, включая расширение .keystore . Вам будет предложено ввести пароль хранилища ключей. Затем keytool отображает все псевдонимы в хранилище ключей.

  2. Введите следующее в терминале или командной строке:

    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

Выполните следующие действия, чтобы создать или изменить проект для своего приложения в Google API Console, включить Fitness API и запросить идентификатор клиента OAuth 2.0.

Если вы хотите получить руководство по процессу и автоматически активировать Fitness API, нажмите

Получить идентификатор клиента

Кроме того, выполните следующие действия, чтобы включить Fitness API в Google API Console и получить идентификатор клиента OAuth 2.0.

  1. Перейдите в консоль Google API .
  2. Выберите проект или создайте новый. Используйте один и тот же проект для версий вашего приложения для Android и REST.
  3. Нажмите «Продолжить» , чтобы включить фитнес-API.
  4. Щелкните Перейти к учетным данным .
  5. Нажмите «Новые учетные данные» и выберите «Идентификатор клиента OAuth» .
  6. В разделе Тип приложения выберите Android .
  7. В появившемся диалоговом окне введите отпечаток 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

  8. Щелкните Создать . Ваш новый идентификатор клиента Android OAuth 2.0 и секрет появятся в списке идентификаторов для вашего проекта. Идентификатор клиента OAuth 2.0 представляет собой строку символов, примерно такую:

    780816631155-gbvyo1o7r2pn95qc4ei9d61io4uh48hl.apps.googleusercontent.com