我想從JsonArrayRequest收集字符串,但我一直無法這樣做。我收到提示如下捕捉JsonArray迴應排除Android
12-24 12:55:08.534 19626-19626/com.domainzguru.butiko W/System.err的:org.json.JSONException:沒有價值的肩膀 12-24 12:55:08.537 19626-19626/com.domainzguru.butiko W/System.err:at org.json.JSONObject.get(JSONObject.java:389) 12-24 12:55:08.537 19626-19626/com。 domainzguru.butiko W/System.err:at org.json.JSONObject.getString(JSONObject.java:550) 12-24 12:55:08.537 19626-19626/com.domainzguru.butiko W/System.err:at com .domainzguru.butiko.Fragments.Orders.ItemsFragment $ 2 $ 1.onResponse(ItemsFragment.java:170) 12-24 12:55:08.537 19626-19626/com.domainzguru.butiko W/System.err:at com.domainzguru。 butiko.Fragments.Orders.ItemsFragment $ 2 $ 1.onResponse(它emsFragment.java:163) 12-24 12:55:08.538 19626-19626/com.domainzguru.butiko W/System.err:at com.android.volley.toolbox.JsonRequest.deliverResponse(JsonRequest.java:65) 12-24 12:55:08.538 19626-19626/com.domainzguru.butiko W/System.err:at com.android.volley.ExecutorDelivery $ ResponseDeliveryRunnable.run(ExecutorDelivery.java:99) 12-24 12:55: 08.538 19626-19626/com.domainzguru.butiko W/System.err:at android.os.Handler.handleCallback(Handler.java:739) 12-24 12:55:08.538 19626-19626/com.domainzguru.butiko W /System.err:at android.os.Handler.dispatchMessage(Handler.java:95) 12-24 12:55:08.538 19626-19626/com.domainzguru.butiko W/System.err:at android.os.Looper .loop(Looper.java:148) 12-24 12:55:08.538 19626-19626/com.domainzguru.butiko W/System.err:at android.app.ActivityThread.main(ActivityThr ead.java:5438) 12-24 12:55:08.538 19626-19626/com.domainzguru.butiko W/System.err:在java.lang.reflect.Method.invoke(Native Method) 12-24 12: 55:08.539 19626-19626/com.domainzguru.butiko W/System.err:at com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit.java:739) 12-24 12:55:08.539 19626- 19626/com.domainzguru.butiko W/System.err的:在com.android.internal.os.ZygoteInit.main(ZygoteInit.java:629)
這是我的代碼的片斷
JsonArrayRequest jsonArrayRequest = new JsonArrayRequest(Request.Method.POST, ITEM_CUSTOMER_MEASUREMENTS, null,
new Response.Listener<JSONArray>() {
@Override
public void onResponse(JSONArray response) {
try {
JSONObject jsonobject = new JSONObject();
String shoulder = jsonobject.getString("shoulder");
et_shoulder.setText(shoulder);
String arm_hole = jsonobject.getString("arm_hole");
et_arm_hole.setText(arm_hole);
String chest_1 = jsonobject.getString("chest_1");
et_chest_1.setText(chest_1);
String chest_2 = jsonobject.getString("chest_2");
et_chest_2.setText(chest_2);
String waist = jsonobject.getString("waist");
et_waist.setText(waist);
String hip = jsonobject.getString("hip");
et_hip.setText(hip);
String slit = jsonobject.getString("slit");
et_slit.setText(slit);
String top_length = jsonobject.getString("top_length");
et_top_length.setText(top_length);
String f_neck = jsonobject.getString("f_neck");
et_f_neck.setText(f_neck);
String b_neck = jsonobject.getString("b_neck");
et_b_neck.setText(b_neck);
String sleeve_length = jsonobject.getString("sleeve_length");
et_sleeve_length.setText(sleeve_length);
String sleeve_breadth = jsonobject.getString("sleeve_breadth");
et_sleeve_breadth.setText(sleeve_breadth);
String sleeve_type = jsonobject.getString("sleeve_type");
et_sleeve_type.setText(sleeve_type);
String hip_size = jsonobject.getString("hip_size");
et_hip_size.setText(hip_size);
String ankle = jsonobject.getString("ankle");
et_ankle.setText(ankle);
String bottom_length = jsonobject.getString("bottom_length");
et_bottom_length.setText(bottom_length);
String knee = jsonobject.getString("knee");
et_knee.setText(knee);
String bottom_breadth = jsonobject.getString("bottom_breadth");
et_bottom_breadth.setText(bottom_breadth);
String thigh = jsonobject.getString("thigh");
et_thigh.setText(thigh);
Log.d("response", "onResponse: " +shoulder +arm_hole +chest_1 +chest_2 +hip +slit +top_length +f_neck +b_neck +sleeve_length
+sleeve_breadth +sleeve_type +hip_size +ankle +bottom_length +knee +bottom_breadth +thigh);
} catch (JSONException e) {
e.printStackTrace();
}
}
},
new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
}
}){
@Override
public Map<String, String> getHeaders() throws AuthFailureError {
Map<String,String> headers = new HashMap<>();
headers.put("Authorization", api_token);
headers.put("X-Request-ID", cust_id);
headers.put("X-Requested-With", item_type);
Log.d("heade values", "getHeaders: " +api_token+" "+cust_id+" "+item_type);
return headers;
}
};
//Creating request queue
RequestQueue requestQueue = Volley.newRequestQueue(ItemsFragment.this.getActivity());
//Adding request to the queue
requestQueue.add(jsonArrayRequest);
有人可以告訴我代碼有什麼問題。這是來自服務器的響應看起來像
[ { 「ID」:3, 「的order_id」:3, 「EMPLOYEE_ID」:1, 「ITEM_TYPE」:8, 「肩」 : 「」, 「arm_hole」: 「」, 「chest_1」: 「」, 「chest_2」: 「」, 「腰」: 「」, 「臀部」: 「」, 「狹縫」:「 「, 」top_length「:」「, 」f_neck「:」「, 」b_neck「:」「, 」sleeve_length「:」「, 「sleeve_breadth」: 「」, 「sleeve_type」: 「」, 「hip_size」: 「38」, 「腳踝」: 「」, 「bottom_length」: 「70」, 「拐點」: 「」, 「bottom_breadth」:「60」,「 」「大腿」:「 , 「的updated_at」: 「2016年12月22日6點38分01秒」, 「CUSTOMER_ID」:1, 「ITEM_ID」:3 } ]
@Panveet辛格我已經更新了錯誤的詳細信息Jsonrequest在onclicklistener trigerred,這是當onclicklistener已經開始 – Anish688
按照你JSON解析你,我得到的錯誤必須首先傳遞JSONArray對JSONObject的響應,然後嘗試從JSONObject獲取焊接響應。 –
@Shashanth:JSONArray jsonObject = new JSONArray();當我使用getString時,給我錯誤說:「無法將json數組中的getString(int)應用於(java.lang.String) – Anish688