我有以下json回复
{"multicast_id":8XXXD,"success":1,"failure":0,"canonical_ids":0,"results":[{"message_id":"0:14XX"}]}
我想检查java中是否 failure = 0 。以下是我的Volley代码。
StringRequest stringRequest = new StringRequest(Request.Method.POST, CONN_URL.send_single_push,
new Response.Listener<String>() {
@Override
public void onResponse(String response) {
Toast.makeText(getActivity(), response, Toast.LENGTH_LONG).show();
}
},
new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
}
}) {
@Override
protected Map<String, String> getParams() throws AuthFailureError {
Map<String, String> params = new HashMap<>();
params.put("title", title);
params.put("message", message);
if (!TextUtils.isEmpty(image))
params.put("image", image);
params.put("course", course);
return params;
}
};
MySingleton.getInstance(getActivity()).addToRequestQueue(stringRequest);
我是android新手。请帮我解决这个问题。
答案 0 :(得分:4)
你可以这样做。
首先,您需要将字符串响应转换为JSON响应
StringRequest stringRequest = new StringRequest(Request.Method.POST, CONN_URL.send_single_push,
new Response.Listener<String>() {
@Override
public void onResponse(String response) {
JSONObject obj = new JSONObject(response);
int failure = obj.optInt("failure");
if (failure == 0){
}else{
}
}
},
new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
}
}) {
@Override
protected Map<String, String> getParams() throws AuthFailureError {
Map<String, String> params = new HashMap<>();
params.put("title", title);
params.put("message", message);
if (!TextUtils.isEmpty(image))
params.put("image", image);
params.put("course", course);
return params;
}
};