Ключевое ограничение Google Geocode API для мобильных приложений - PullRequest
3 голосов
/ 01 июля 2019

В моих приложениях для Android и iOS использовался один и тот же неограниченный API-ключ (платформа и сервис) для сервисов геокодирования.Я хочу использовать отдельные ограниченные ключи для отдельного сервиса и платформы.В облачной консоли Google, как я могу ограничить свои ключи для разных платформ?я должен использовать android, дающий имя пакета и sha1 и iOS с идентификатором пакета, или я должен использовать IP-адрес своего сервера?какая должна быть лучшая практика?Я использую модификацию, чтобы поразить эти apis.

иногда ключи отвечают с this IP, site or mobile application is not authorized to use this API key. Request received from IP address 202.65.11.56, with empty referer, и снова после некоторого времени это отвечает с правильным ответом.почему происходит такая ненормальность?

Я также ищу места, используя автозаполнение мест sdk, и для получения геометрии я вызываю геокодирование с помощью place_id. Должен ли я дать разрешение мест api в ключе геокодов api для этого?

Ответы [ 2 ]

2 голосов
/ 01 июля 2019

Для всех используемых вами Google Api вы можете использовать один ApiKey и ограничить его. Ограничьте его на основе вашей платформы и используйте этот ключ на соответствующих платформах. Так как вы упомянули, что будете использовать в мобильных приложениях (Android и iOS), выполните следующие действия.

Перейти к Облачная консоль Google

Создать проект > Перейти к API & Services > Учетные данные > Создать учетные данные

Затем ограничьте ключ следующим образом -

  1. Для Android добавьте здесь имя пакета и сертификат SHA-1

enter image description here

  1. Для iOS добавьте свой Bundle Id здесь

enter image description here

Теперь используйте APIKey на платформе Android и iOS. Это лучший способ ограничить ваш ключ API Google.

Надеюсь, это поможет!

1 голос
/ 04 июля 2019

Скорее всего, вы используете веб-сервис с ключом API, доступ к которому ограничен для приложений Android / iOS.

Из-за ограничений мобильного приложения его можно использовать только для SDK Карт для Android / iOS,а не какой-либо веб-сервис или JavaScript API.

Я рекомендую определить, какой веб-сервис выдает эту ошибку (вероятно, API геокодирования, пожалуйста, перепроверьте), и создать отдельный ключ API с ограничениями IP-адресов.(не для Android / iOS App), чтобы его можно было использовать для веб-службы.

...