У меня возникли проблемы с разбором ответа JSON с YouTube, но мне нужна помощь. Я пытаюсь получить поля: id, videoId, thumbnails и url, используя следующее:
private String getUrl(String id) throws IOException, JSONException {
HttpClient client = new DefaultHttpClient();
HttpGet clientGetMethod = new HttpGet(YOUTUBE_INFO_URL.replace("_ID_", id));
HttpResponse clientResponse = null;
clientResponse = client.execute(clientGetMethod);
String infoString = _convertStreamToString(clientResponse.getEntity().getContent());
String urldata=new JSONObject(infoString).getJSONObject("id").getJSONObject("videoId").getJSONArray("thumbnails").getJSONObject(0).getString("url");
return new JSONObject(infoString).getJSONObject("id").getJSONObject("videoId").getJSONArray("thumbnails").getJSONObject(0).getString("url");
}
Ответ YouTube API v3: http://pastebin.com/LKWC2Cbz
Однако я постоянно получаю фатальные ошибки из-за неправильного синтаксического анализа. Может ли кто-нибудь заметить, где я мог ошибиться? Я указываю поля, которые мне нужны, однако я чувствую, что структура не должна каким-то образом соответствовать ответу JSON.