Ключ API не найден в приложении Google Translate
Я пытаюсь использовать Google Translate, используя этот метод вызова:
StringBuilder result = new StringBuilder();
Log.e("INFO", "texttotranslate, from and to are:" + texttotranslate + ", " + from + " and " + to);
String key="MY_PERSONAL_API_KEY";
try {
String encodedText = URLEncoder.encode(texttotranslate, "UTF-8");
Log.e("INFO", "encoded without troubles UTF-8");
String urlStr = "https://www.googleapis.com/language/translate/v2?key=" + key + "&q=" + encodedText + "&target=" + to + "&source=" + from;
Log.e("INFO", "called Google APIs correctly (I think)");
URL url = new URL(urlStr);
HttpsURLConnection conn = (HttpsURLConnection) url.openConnection();
Log.e("INFO", "opened httpsURLConnection correctly");
InputStream stream;
Log.e("INFO", "input repsonse stream = "+conn.getResponseCode());
if (conn.getResponseCode() == 200) //success
{
stream = conn.getInputStream();
Log.e("INFO", "gets input stream correctly");
} else
stream = conn.getErrorStream();
Log.e("INFO", "failed to get input stream correctly");
BufferedReader reader = new BufferedReader(new InputStreamReader(stream));
String line;
while ((line = reader.readLine()) != null) {
result.append(line);
Log.e("INFO", "line currently = " + line);
}
Я с треском проваливаюсь, получая следующие ошибки:
07-03 13: 09: 07.167 20916-21078 / net.stuffilike.multitranslater E / INFO: кодируется без проблем UTF-8 07-03 13:09:07.168 20916-21078/net.stuffilike.multitranslater E/INFO: называется Google API правильно (я думаю) 07-03 13:09:07.179 20916-21078/net.stuffilike.multitranslater E/INFO: правильно открыл httpsURLConnection 07-03 13:09:07.467 20916-21078/net.stuffilike.multitranslater E/INFO: входной поток ответов = 400 07-03 13:09:07.468 20916-21078/net.stuffilike.multitranslater E/INFO: не удалось правильно получить входной поток 07-03 13: 09: 07.468 20916-21078 / net.stuffilike.multitranslater E / INFO: строка в настоящее время = { 07-03 13:09:07.468 20916-21078/net.stuffilike.multitranslater E/INFO: строка в настоящее время = "ошибка": { 07-03 13:09:07.468 20916-21078/net.stuffilike.multitranslater E/INFO: строка в настоящее время = "код": 400, 07-03 13:09:07.469 20916-21078/net.stuffilike.multitranslater E/INFO: строка в настоящее время = "сообщение": "Ключ API не найден. Пожалуйста, передайте действительный ключ API.", 07-03 13:09:07.469 20916-21078/net.stuffilike.multitranslater E/INFO: строка в настоящее время = "ошибки": [ 07-03 13:09:07.469 20916-21078/net.stuffilike.multitranslater E/INFO: строка в настоящее время = { 07-03 13:09:07.469 20916-21078/net.stuffilike.multitranslater E/INFO: строка в настоящее время = "message": "Ключ API не найден. Пожалуйста, передайте действительный ключ API.", 07-03 13:09:07.469 20916-21078/net.stuffilike.multitranslater E/INFO: line настоящее время =" домен ": "global", 07-03 13:09:07.469 20916-21078/net.stuffilike.multitranslater E/INFO: строка в настоящее время = "причина": "badRequest" 07-03 13:09:07.469 20916-21078/net.stuffilike.multitranslater E/INFO: строка в настоящее время = } 07-03 13:09:07.469 20916-21078/net.stuffilike.multitranslater E/INFO: строка в настоящее время = ], 07-03 13:09:07.469 20916-21078/net.stuffilike.multitranslater E/INFO: строка в настоящее время = "status": "INVALID_ARGUMENT" 07-03 13:09:07.469 20916-21078/net.stuffilike.multitranslater E/INFO: строка в настоящее время = } 07-03 13:09:07.469 20916-21078/net.stuffilike.multitranslater E/INFO: строка в настоящее время = } 07-03 13:09:07.498 20916-21078/net.stuffilike.multitranslater E/INFO: result = { "error": { "code": 400, "message": "Ключ API не найден. Пожалуйста, передайте действительный ключ API.", " Errors": [ { "message": " Ключ API не найден. Пожалуйста, передайте действительный ключ API.", " Domain": "global", "reason": "badRequest" } ], "status": "INVALID_ARGUMENT" }}
Я пробовал другие ключи API, но с тем же результатом, предлагая мне что-то еще здесь не так. Может ли кто-нибудь предложить мне действительную тему, чтобы потянуть здесь?
РЕДАКТИРОВАТЬ: в зависимости от того, что я отправляю в качестве моей строки, я могу получить либо ошибку, которая требует действительный ключ API, либо сообщение о том, что мой клиент отправил неверный или недопустимый запрос. Оба типа запроса включают ключ. Кто-нибудь видел это раньше?