android从Json对象获取值

android从Json对象获取值,android,json,key-value,Android,Json,Key Value,我正在扫描一个条形码,它从条形码api返回一个Json格式的结果 scan方法返回一个条形码编号,该编号使用截取请求获取相应的Json数据项。这似乎工作正常,因为jsonObject中的结果是: {"valid":"true", "number":"021500058506", "itemname":"Lawry's Garlic Salt Coarse Ground W\/Parsley", "alias":"", "description":"", "avg_price":"

我正在扫描一个条形码,它从条形码api返回一个Json格式的结果

scan方法返回一个条形码编号,该编号使用截取请求获取相应的Json数据项。这似乎工作正常,因为jsonObject中的结果是:

{"valid":"true",
"number":"021500058506",
"itemname":"Lawry's Garlic Salt Coarse Ground W\/Parsley",
"alias":"",
"description":"",
"avg_price":"",
"rate_up":0,
"rate_down":0}
问题在于提取“itemname”的值。使用下面的代码,我得到一个字符串textResult的空结果

public void findProduct(){

    final JsonObjectRequest jsObjRequest = new JsonObjectRequest
        (Request.Method.GET, getUrl(), null, new Response.Listener<JSONObject>() {

            @Override
            public void onResponse(JSONObject response) {
                String textResult = "";
                try {
                    JSONObject productItem = response.getJSONObject("");

                    textResult = productItem.getString("itemname");

                    } catch (JSONException e1) {
                    e1.printStackTrace();
                }
                contentTxt.setText(textResult);

                Toast toast = Toast.makeText(getApplicationContext(),
                        "Text Result" + textResult, Toast.LENGTH_LONG);
                toast.show();
            }

        }, new Response.ErrorListener() {

            @Override
            public void onErrorResponse(VolleyError error) {
                if(error != null) Log.e("MainActivity", error.getMessage());

            }
        });

    VolleyHelper.getInstance(getApplicationContext()).addToRequestQueue(jsObjRequest);
}
没有给我“itemname”的值吗

谢谢这一行:

JSONObject productItem = response.getJSONObject("");
需要:

JSONObject productItem = new JSONObject(YOUR_JSON_STRING);

JSONObject productItem=response.getJSONObject(“”)是我想的问题。
productItem
是否正确填写?是否收到错误消息?如果是的话,也把它放在问题中。@eyeballz-是的,我知道答案是上面文本中的jsonobject。对象通过getJSONObject(“”)通过ok,因为它是没有名称的单个项。至少我是这么想的。我通常会陷入麻烦。@眼珠-没有错误,只是空白值分配较早。尝试<代码>文本结果=响应.GETSHIPE(“ITENMEND”)< /代码>
JSONObject productItem = new JSONObject(YOUR_JSON_STRING);