Parsowanie JSON w Androidzie: Brak wartości x błędu
Oto kod, którego używam w moim AsyncTask
DefaultHttpClient httpClient = new DefaultHttpClient();
HttpGet request = new HttpGet(url);
request.setHeader("Accept", "application/json");
request.setHeader("Content-type", "application/json");
HttpResponse response = httpClient.execute(request);
HttpEntity responseEntity = response.getEntity();
char[] buffer = new char[(int)responseEntity.getContentLength()];
InputStream stream = responseEntity.getContent();
InputStreamReader reader = new InputStreamReader(stream);
reader.read(buffer);
stream.close();
result = new String(buffer);
return result;
Zwraca wynik ciągu iw mojej metodzie onPostExecute próbuję przeanalizować ten ciąg wejściowy:
JSONObject vehicle = new JSONObject(new String(result));
makeEdit.setText(vehicle.getString("make"));
plateEdit.setText(vehicle.getString("plate"));
modelEdit.setText(vehicle.getString("model"));
yearEdit.setText(vehicle.getString("year"));
Gdy tylko osiągnie makeEdit.setText, zgłasza błąd - brak wartości dla make. Nadal jestem bardzo nowy w Androidzie, więc nie wysyłaj pogróżek, jeśli był jakiś oczywisty błąd. Tekstem wejściowym jest następujący ciąg JSON:
{"GetJSONObjectResult":{"make":"Ford","model":"Focus","plate":"XXO123GP","year":2006}}