Mano Mano - 10 days ago 4
Android Question

How to get particular value from JSON response in Android?

I want to get the value of

"result"
from the below JSON response and store it locally.Here's the code:

private class GetContacts extends AsyncTask<Void, Void, Void> {

@Override
protected Void doInBackground(Void... arg0) {
// Creating service handler class instance
ServiceHandler sh = new ServiceHandler();

// Making a request to url and getting response
String jsonStr = sh.makeServiceCall(url, ServiceHandler.GET);

if (jsonStr != null) {
try {
JSONObject jsonObj = new JSONObject(jsonStr);

//JSONArray contacts;
contacts = jsonObj.getJSONArray("response");
Log.d("Response: ", "> " + contacts);

} catch (JSONException e) {
e.printStackTrace();
}
} else {
Log.e("ServiceHandler", "Couldn't get any data from the url");
}
return null;
}
}


My Response :

{"response":

[{
"name":"ajay",
"class":"7",
},

{
"rank":1
}],


"date":

{
"startdate":2/12/2012,
},
"result":"pass"
}

Answer

You need to create a JSON Object from json String, you get and then retrieve its data:

JSONObject json= new JSONObject(responseString);  //your response
try {
    String result = json.getString("result");    //result is key for which you need to retrieve data
    } catch (JSONException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }

Hope it helps.

Comments