Доступ без ключа к платформе Google Maps устарел - PullRequest
0 голосов
/ 16 сентября 2018

Иногда, когда я пытаюсь использовать Google MAPS API KEY для получения URL-адреса для рисования «ломаной линии», в моих журналах появляется ошибка:

«error_message»: «Безключевой доступ кПлатформа Google Maps устарела. Пожалуйста, используйте ключ API для всех вызовов API, чтобы избежать прерывания обслуживания. Для получения дополнительной информации см. http://g.co/dev/maps-no-account","routes":[],"status":"OVER_QUERY_LIMIT"

У меня есть это в моем манифесте:

<meta-data
        android:name="com.google.android.geo.API_KEY"
        android:value="MY_GOOGLE_MAPS_API_KEY" />

Кроме того, этот API-ключ «включен» в моей КОНСОЛЕ API и ограничен SDK Google Maps и API-интерфейсом. У меня также включен биллинг для моей КОНСОЛИ API Google, но иногда я все еще получаю эту ошибку.

Ответы [ 4 ]

0 голосов
/ 26 октября 2018

Я только что добавил параметр key в URL.После этого я могу получить ответ от Google Map API.

Пример: https://maps.googleapis.com/maps/api/geocode/json?address=COMPLETE+ADDRESS&sensor=true&key=YOUR_GOOGLE_MAP_API_KEY

0 голосов
/ 23 сентября 2018

Для тех, кто использует библиотеку направлений jd-alexander , не забудьте добавить ключ API в построитель маршрутизации:

Routing routing = new Routing.Builder()
                .travelMode(/* Travel Mode */)
                .withListener(/* Listener that delivers routing results.*/)
                .waypoints(/*waypoints*/)
                .key(/*api key for quota management*/)
                .build();
    routing.execute();
0 голосов
/ 23 сентября 2018

Если кто-либо использует библиотеку направлений Google jd-alexander , используйте ключ API Google, как показано ниже.

Routing routing = new Routing.Builder()
                .key(YOUR_KEY)
                .travelMode(AbstractRouting.TravelMode.DRIVING)
                .withListener(this)
                .alternativeRoutes(false)
                .waypoints(SourceLatLng, DestinationLatLng)
                .build();
        routing.execute();

Если у вас есть какие-либо сомнения, не стесняйтесь оставлять комментарии.

0 голосов
/ 18 сентября 2018

С 11 июня 2018 года Google начал принудительно использовать ключи API. Использование без ключа приведет к ухудшению работы или к ошибке типа OVER_DAILY_LIMIT и OVER_QUERY_LIMIT.

Источник: Важные обновления с Google Maps Platform

Вставка ключа API в URL, как это, является хорошим решением:

String url = "https://maps.googleapis.com/maps/api/directions/"+output+"?"+parameters + "&key=" + MY_API_KEY

Но будьте уверены, что ваши ключевые ограничения хорошо настроены. Если вы ограничиваете ключ для своего приложения, он может не работать, потому что запрос, сделанный через HTTP, связан с вашим IP-адресом. Это означает, что даже если вы правильно настроили приложение Android и манифест, это может привести к ACCESS_DENIED. Это можно проверить, изменив ограничение.

Пример отсутствия ограничений для целей тестирования: enter image description here

Подробнее о ключе API и ограничениях: Краткое руководство по получению ключа

...