Для использования Google Awareness API необходимо добавить в приложение ключ Google API. Вам потребуется ключ Android API.
Все приложения для Android подписываются цифровым сертификатом, закрытый ключ которого находится у вас. Для получения дополнительной информации о цифровых сертификатах обратитесь к руководству по подписи приложений для Android.
Ключи API Android привязаны к определенным парам сертификат-пакет. Для каждого сертификата нужен только один ключ, независимо от количества пользователей приложения.
Для получения ключа для вашего приложения необходимо выполнить несколько шагов. Они подробно описаны в этом руководстве и вкратце суммируются следующим образом:
- Получите информацию о сертификате вашего приложения.
- Зарегистрируйте проект в консоли разработчиков Google и добавьте 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.
Чтобы начать работу с Google Awareness API, нажмите кнопку «Получить ключ» . Она перенаправит вас в консоль разработчиков Google, которая проведет вас через весь процесс и автоматически активирует Awareness API.
В качестве альтернативы, для получения ключа API выполните следующие действия:
- Перейдите в консоль разработчиков Google .
- Выберите проект или создайте новый.
- Нажмите «Продолжить» , чтобы включить API Awareness.
На странице «Учетные данные» создайте ключ 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
API Awareness позволяет получать доступ к различным типам контекстных данных, например, к маякам . Для использования этих типов необходимо включить соответствующие API в консоли разработчиков Google.
| Услуга | Методы API для повышения осведомленности | API для включения |
|---|---|---|
| Маяки | SnapshotApi.getBeaconState() , FenceApi.BeaconFence | API для получения сообщений поблизости |