В своем 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"
}
Итак, какой ключ я должен использовать и как я могу заставить его работать правильно?
Заранее спасибо!