API маршрутов Google в Android

В своем Android-приложении я использую Directions API для расчета времени в пути от пункта A до пункта B на машине.

Теперь я пытаюсь создать новую функцию, используя общественный транспорт, и с помощью Directions API вы можете сделать это, добавив &mode=transit. После того, как я это сделал, я получаю сообщение об ошибке, говорящее, что я должен использовать ключ API. Поэтому я добавил ключ API своего приложения Android в свой код, используя &key=***. К сожалению, мое приложение дает следующий ответ:

«Этот IP-адрес, сайт или мобильное приложение не авторизованы для использования этого ключа API».

В моем API-ключе Android-приложения есть правильный отпечаток пальца.

Тогда я подумал, что это HTTP-запрос, поэтому я не должен использовать «Ключ для приложений браузера». Итак, я пошел и попробовал это, но потом я получаю ту же ошибку. В то время как Referers говорит: «Любой реферер разрешен».

Мой код:

AsyncHttpClient client = new AsyncHttpClient();
client.get("https://maps.googleapis.com/maps/api/distancematrix/json?origins="+ latlong +"&destinations="+ location +"&key=***&sensor=true&units=metric&language=nl&mode=" + mode, new AsyncHttpResponseHandler() {

    @Override
    public void onStart() {}

    @Override
    public void onSuccess(int statusCode, Header[] headers, byte[] response) {}

    @Override
    public void onFailure(int statusCode, Header[] headers, byte[] errorResponse, Throwable e) {}

}

Вот ответ JSON:

{
    "destination_addresses" : [],
    "error_message" : "This IP, site or mobile application is not authorized to use this API key.",
    "origin_addresses" : [],
    "rows" : [],
    "status" : "REQUEST_DENIED"
}

Итак, какой ключ я должен использовать и как я могу заставить его работать правильно?

Заранее спасибо!


person mparryy    schedule 15.01.2015    source источник


Ответы (1)


Возможно, вам потребуется включить API в консоли разработчика:

https://console.developers.google.com/

Перейдите к «Выбрать проект», выберите свой проект, нажмите «API и аутентификация» слева, затем «API», затем в списке API Карт Google выберите правильный (это должен быть API направлений Google Карт в этом case) и, наконец, нажмите «Включить API».

person Dylan Reedy    schedule 26.10.2015