Чтобы использовать Google Awareness API, вы должны добавить ключ Google API в свое приложение. Тип ключа API, который вам нужен, — это ключ Android API.
Все приложения для Android подписаны цифровым сертификатом, для которого у вас есть закрытый ключ. Дополнительные сведения о цифровых сертификатах см. в руководстве Android о том, как подписать приложение .
Ключи Android API связаны с определенными парами сертификат-пакет. Вам нужен только один ключ для каждого сертификата, независимо от того, сколько пользователей у вас есть для приложения.
Чтобы получить ключ для своего приложения, необходимо выполнить несколько шагов. Они подробно описаны в этом руководстве и резюмируются следующим образом:
- Получите информацию о сертификате вашего приложения.
- Зарегистрируйте проект в консоли Google Developers и добавьте User Context API в качестве службы для проекта.
- Запросите ключ.
- Добавьте ключ в свое приложение. Для этого добавьте элемент в манифест приложения.
Найдите информацию о сертификате вашего приложения
Ключ API основан на сокращенной форме цифрового сертификата вашего приложения, известной как отпечаток SHA-1 . Чтобы отобразить отпечаток SHA-1 для вашего сертификата, сначала убедитесь, что вы используете правильный сертификат. У вас могут быть следующие два сертификата на выбор:
- Сертификат отладки . Инструменты Android SDK автоматически генерируют этот сертификат при выполнении отладочной сборки. Используйте этот сертификат только с приложениями, которые вы тестируете. Не пытайтесь опубликовать приложение, подписанное сертификатом отладки. Сертификат отладки более подробно описан в разделе Подпишите отладочную сборку документации для разработчиков Android.
- Сертификат выпуска . Инструменты Android SDK генерируют этот сертификат при сборке выпуска. Вы также можете сгенерировать этот сертификат с помощью программы
keytool
. Используйте этот сертификат, когда будете готовы выпустить свое приложение для всего мира.
Дополнительные сведения о keytool
см. в документации по Oracle .
Показать отпечаток сертификата отладки
Используйте программу keytool
с параметром -v
, чтобы отобразить отпечаток сертификата SHA-1. Для этого выполните следующие шаги:
Найдите файл хранилища ключей отладки. Имя файла —
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
Показать отпечаток сертификата выпуска
Используйте программу keytool
с параметром -v
, чтобы отобразить отпечаток сертификата SHA-1. Для этого выполните следующие шаги:
- Найдите файл хранилища ключей сертификата выпуска. Для хранилища ключей выпуска нет места или имени по умолчанию. Если вы не укажете его при сборке приложения для выпуска, сборка оставит ваш
.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 .
- Выберите проект или создайте новый.
- Нажмите «Продолжить» , чтобы включить 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
Щелкните Создать . Ваш новый ключ Android API появится в списке ключей API для вашего проекта. Ключ API — это строка символов, например следующая:
AIzaSyBdVl-cTICSwYKrZ95LoVuw7dbMuDt1KG0
Теперь, когда у вас есть ключ API, вы можете добавить его в манифест своего приложения, как описано в руководстве по началу работы .
Активировать дополнительные API
API Awareness позволяет получить доступ к нескольким типам контекстных данных, например маякам . Чтобы использовать эти типы, вам необходимо включить соответствующие API в Google Developers Console.
Услуга | Методы API осведомленности | API для включения |
---|---|---|
Маяки | SnapshotApi.getBeaconState() , FenceApi.BeaconFence | API сообщений поблизости |