2016-03-20 19 views
0

Я смог успешно создать release-apk в андроид-студиях.Android-службы Google: ключ API и отпечаток пальца SHA-1 для выпуска и отладки

Мое приложение использует некоторые сервисы от Google, такие как Google App Invites и Google Places для Android.

Чтобы получить эти услуги, я должен был зарегистрировать ключ API на консоли разработчика Google, который выглядит следующим образом:

enter image description here

Я не уверен в названии пакета и SHA-1 отпечаток палец разделе получение ключа API.

Если у меня есть отладочная версия и версия для версии моего приложения (скажем, имя пакета com.myapp), я дважды добавляю в com.myapp имя пакета, но устанавливаю выпуск и отладку SHA- 1 соответственно для каждого имени пакета?

Итак:

com.myapp (SHA-1 fingerprint) S1:2D:3F etc 
com.myapp (SHA-1 fingerprint) D2:1W:2V etc 

Я пытался сделать это, но до сих пор версии выпуска приложения, кажется, не хотят работать.

APP_INVITE говорит:

Нет Android идентификатор клиента найдено имя пакета com.myapp. (APPINVITE_CLIENT_ID_ERROR)

автозаполнения Адресов говорит:

Ошибка при получении автозаполнения Prediction API вызова: Статус {StatusCode = PLACES_API_INVALID_APP, разрешение = NULL}

ответ

0

OK - после некоторых исследований, да, вы дважды добавляете имя своего пакета, а затем добавляете отпечаток SHA-1 для выпуска и отладки отдельно. Это сделает PLACES работать.

Кроме того, из моих исследований я заметил, что ошибка APP_INVITE указывала на отсутствие идентификатора клиента для пакета. Обратите внимание, что это относится к вашим идентификаторам клиента OAuth 2.0, которые можно найти под ключами API в консоли разработчика Google. Изменение этого ключа SHA-1 (в этом случае нет возможности вставить SHA-1 для разработки и debud SHA-1 в этом случае) приведет к тому, что APP_INVITE будет работать.

1

Это немного сбивает с толку, я думаю, что лучшее решение, чтобы избавиться от таких сценариев, чтобы добавить applicationIdSuffix так что вы (и любая другая услуга) может различать сборки: com.myapp.beta для сборки и com.myapp для выпуска.

Я рекомендую вам взглянуть на этот подробный учебник: http://medyo.github.io/2015/different-android-app-resources-gradle-build-type/

Надежда, которая отвечает на ваш вопрос

+0

Боюсь, вы слишком поздно. Я решил свою проблему. См. Мой ответ ниже. – Simon

+0

Да, я видел это, он будет работать, но вы не сможете отличить, какой ключ соответствует какой сборки? Я настоятельно рекомендую использовать суффиксы id. – Mehdi

+0

Хорошая точка. К сожалению, я до сих пор оставил подписку на выпуск до последней минуты, поэтому теперь мне придется использовать мой метод быстрого исправления и буду использовать ваше решение в будущем.Еще раз спасибо +1 – Simon

 Смежные вопросы

  • Нет связанных вопросов^_^