Регистрация и ключи API

Чтобы использовать Google Awareness API, добавьте в приложение ключ API Google. Тип ключа API, который вам нужен, — это ключ Android API.

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

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

Чтобы получить ключ для приложения, необходимо выполнить несколько шагов. Они подробно описаны в этом руководстве и кратко изложены ниже.

  1. Получите информацию о сертификате приложения.
  2. Зарегистрируйте проект в Google Developers Console и добавьте User Context API в качестве сервиса для проекта.
  3. Запросите ключ.
  4. Добавьте ключ в приложение. Для этого добавьте элемент в манифест приложения.

Как найти информацию о сертификате приложения

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

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

Дополнительную информацию о keytool можно найти в документации Oracle.

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

Как посмотреть цифровой отпечаток сертификата для отладки

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

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

    • OS X и Linux: ~/.android/.
    • Windows Vista и Windows 7: C:\Users\your_user_name\.android\
  2. Откройте цифровой отпечаток SHA-1.

    • В Linux или OS X откройте терминал и введите следующее:

      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
Сертификат для выпуска

Как посмотреть цифровой отпечаток сертификата рабочей версии

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

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

    keytool -list -keystore your_keystore_name
          
  3. Замените your_keystore_name полным путем и названием хранилища ключей. Добавьте расширение .keystore. Введите пароль хранилища ключей. Затем keytool покажет все псевдонимы в хранилище ключей.
  4. В окне терминала или в командной строке введите следующую команду:

          keytool -list -v -keystore your_keystore_name -alias your_alias_name
          
  5. Замените your_keystore_name полным путем и названием хранилища ключей. Добавьте расширение .keystore.
  6. Замените 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 двузначных чисел в шестнадцатеричном формате, которые разделены двоеточиями.

Получите ключ API в Google Developers Console

Чтобы начать работу с Google Awareness API, нажмите кнопку Получить ключ. Он содержит ссылку на Google Developers Console, где вы сможете активировать Awareness API.

Получить ключ

Или выполните следующие действия, чтобы получить ключ API:

  1. Перейдите в Google Developers Console.
  2. Выберите существующий или создайте новый проект.
  3. Нажмите Continue (Продолжить), чтобы включить Awareness API.
  4. На странице "Учетные данные" создайте ключ Android и задайте учетные данные API.

  5. В диалоговом окне "Создать ключ" ограничьте использование ключа приложениями 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.awareness-example
    
  6. Нажмите Создать. Новый ключ API для Android появится в списке ключей API для вашего проекта. Ключ API – это строка символов, например:

    AIzaSyBdVl-cTICSwYKrZ95LoVuw7dbMuDt1KG0
    

Теперь, когда у вас есть ключ API, вы можете добавить его в манифест приложения, как описано в руководстве по началу работы.

Как активировать дополнительные API

Awareness API позволяет получать доступ к различным типам контекстных данных, например к маячкам. Чтобы использовать эти типы, необходимо включить соответствующие API в Google Developers Console.

Сервис Методы Awareness API API, который нужно включить
Маячки SnapshotApi.getBeaconState(), FenceApi.BeaconFence Nearby Messages API