Чтобы использовать Google Awareness API, необходимо добавить в приложение ключ API Google. Вам понадобится ключ API Android.
Все приложения для Android подписываются цифровым сертификатом, закрытый ключ которого принадлежит вам. Дополнительную информацию о цифровых сертификатах вы найдете в руководстве по добавлению подписи в приложения.
Ключи Android API связаны с определенными парами сертификатов и пакетов. Для каждого сертификата нужен только один ключ, независимо от того, сколько пользователей у приложения.
Чтобы получить ключ для приложения, необходимо выполнить несколько шагов. Они подробно описаны в этом руководстве и кратко изложены ниже.
- Получать информацию о сертификате приложения.
- Зарегистрируйте проект в Google Developers Console и добавьте API контекста пользователя в качестве сервиса для проекта.
- Запросите ключ.
- Добавьте ключ в приложение. Для этого добавьте элемент в манифест приложения.
Как найти информацию о сертификате приложения
Ключ API основан на краткой форме цифрового сертификата вашего приложения, известной как цифровой отпечаток SHA-1. Чтобы посмотреть цифровой отпечаток SHA-1 для сертификата, сначала убедитесь, что вы используете правильный сертификат. У вас может быть два сертификата:
- Сертификат для отладки. Этот сертификат создается автоматически при выполнении отладочной сборки приложения с помощью Android SDK Tools. Его следует использовать исключительно при тестировании приложений. Не пытайтесь опубликовать приложение, подписанное с помощью сертификата для отладки. Подробнее о сертификате для отладки рассказывается в разделе Подписывание отладочной сборки документации для разработчиков Android.
- Сертификат для выпуска. Он создается с помощью Android SDK Tools, когда вы запускаете конечную сборку. Вы также можете создать этот сертификат с помощью программы
keytool. Используйте этот сертификат, когда будете готовы разместить приложение в магазине.
Дополнительную информацию о keytool можно найти в документации Oracle.
Как посмотреть цифровой отпечаток сертификата для отладки
Чтобы посмотреть цифровой отпечаток сертификата SHA-1, используйте программу keytool с параметром -v. Для этого выполните следующие действия:
Найдите свой файл хранилища ключей для отладки. Файл называется
debug.keystoreи создается при первой сборке проекта. По умолчанию он хранится в том же каталоге, что и файлы виртуального устройства Android (AVD):- OS X и Linux:
~/.android/. - Windows Vista и Windows 7:
C:\Users\your_user_name\.android\
- OS X и Linux:
Откройте цифровой отпечаток 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. Для этого выполните следующие действия:
- Найдите свой файл хранилища ключей сертификата для выпуска. Для хранилища ключей рабочей версии нет названия или местоположения по умолчанию. Если вы не укажете его при создании приложения для выпуска, сборка останется
.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 двузначных шестнадцатеричных чисел, разделенных двоеточиями.
Как получить ключ API в Google Developers Console
Чтобы начать работу с Google Awareness API, нажмите кнопку Получить ключ. Он ведет в Google Developers Console, где вы сможете выполнить все необходимые действия и автоматически активировать Awareness API.
Или выполните следующие действия, чтобы получить ключ API:
- Откройте Google Developers Console.
- Выберите существующий или создайте новый проект.
- Нажмите Продолжить, чтобы включить Awareness API.
На странице "Учетные данные" создайте ключ Android и задайте учетные данные API.
В диалоговом окне "Создать ключ" необходимо ограничить использование ключа приложениями 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Нажмите Создать. Новый ключ API для Android появится в списке ключей API для вашего проекта. Ключ API – это строка символов, например:
AIzaSyBdVl-cTICSwYKrZ95LoVuw7dbMuDt1KG0
Теперь, когда у вас есть ключ API, вы можете добавить его в манифест приложения, как описано в руководстве Начало работы.
Как активировать дополнительные API
Awareness API позволяет получать доступ к различным типам контекстных данных, например маячкам. Чтобы использовать эти типы, необходимо включить соответствующие API в Google Developers Console.
| Сервис | Методы Awareness API | API, который нужно включить |
|---|---|---|
| Маркеры | SnapshotApi.getBeaconState(),
FenceApi.BeaconFence |
Nearby Messages API |