在Volley中获得json的回应

时间:2018-04-09 19:12:50

标签: android json android-volley

我有以下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新手。请帮我解决这个问题。

1 个答案:

答案 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;
    }
};