그래서 JSON에서 다음과 같습니다 데이터를 가져올 수 없습니다 : 나는 트랙 배열 내 첫 번째 "이름"필드를 가져 오기 위해 노력하고있어JSON 배열은
"tracks":{
"track":[
{
"name":"Do I Wanna Know?",
"duration":"272",
"listeners":"711568",
"mbid":"f1e57531-e0df-4b3e-938f-1ae30c5b1a11",
"url":"http://www.last.fm/music/Arctic+Monkeys/_/Do+I+Wanna+Know%3F",
"streamable":{
"#text":"0",
"fulltrack":"0"
},
.
JSONArray pjesma = jsonObject.getJSONArray("track");
JSONObject imePjesme = pjesma.getJSONObject(0);
String pjesmaTekst = imePjesme.getString("name");
을하지만 그것은 단지 내가 잘못 뭐하는 거지 No value for track
가 있다는 것을 저에게 말한다 :
나는이 코드를 얻으려고?
FULL CODE :
private void getData(String country){
informacije.clear();
String finalUrl = urlLeft+country+urlRight;
JsonObjectRequest mainRequest = new JsonObjectRequest(Request.Method.GET, finalUrl, (JSONObject) null, new Response.Listener<JSONObject>() {
@Override
public void onResponse(JSONObject response) {
try {
JSONObject pjesmaObject = response.getJSONObject("tracks");
JSONArray pjesmaArray = pjesmaObject.getJSONArray("track");
for (int i = 0; i < pjesmaArray.length(); i++){
JSONObject jsonObject = pjesmaArray.getJSONObject(i);
// ARTIST
JSONObject imeIzvodjaca = jsonObject.getJSONObject("artist");
String izvodjacTekst = imeIzvodjaca.getString("name");
// PJESMA
JSONArray pjesma = jsonObject.getJSONArray("track");
JSONObject imePjesme = pjesma.getJSONObject(0);
String pjesmaTekst = imePjesme.getString("name");
//SLIKA
JSONArray imageArray = jsonObject.getJSONArray("image");
JSONObject largeImage = imageArray.getJSONObject(3);
String image = largeImage.getString("#text");
Informacije info = new Informacije();
info.setArtist(izvodjacTekst);
info.setTitle(pjesmaTekst);
info.setUrl(image);
informacije.add(info);
}
adapter.notifyDataSetChanged();
} catch (JSONException e) {
e.printStackTrace();
}
}
}, new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
}
});
AppController.getInstance().addToRequestQueue(mainRequest);
}
JSON 응답
06-23 14:43:38.167 16255-16255/com.darioradecic.topmusicandartists W/System.err: org.json.JSONException: No value for track
06-23 14:43:38.170 16255-16255/com.darioradecic.topmusicandartists W/System.err: at org.json.JSONObject.get(JSONObject.java:389)
06-23 14:43:38.170 16255-16255/com.darioradecic.topmusicandartists W/System.err: at org.json.JSONObject.getJSONArray(JSONObject.java:584)
06-23 14:43:38.170 16255-16255/com.darioradecic.topmusicandartists W/System.err: at com.darioradecic.topmusicandartists.MainActivity$1.onResponse(MainActivity.java:63)
06-23 14:43:38.170 16255-16255/com.darioradecic.topmusicandartists W/System.err: at com.darioradecic.topmusicandartists.MainActivity$1.onResponse(MainActivity.java:48)
06-23 14:43:38.170 16255-16255/com.darioradecic.topmusicandartists W/System.err: at com.android.volley.toolbox.JsonRequest.deliverResponse(JsonRequest.java:72)
06-23 14:43:38.170 16255-16255/com.darioradecic.topmusicandartists W/System.err: at com.android.volley.ExecutorDelivery$ResponseDeliveryRunnable.run(ExecutorDelivery.java:99)
06-23 14:43:38.170 16255-16255/com.darioradecic.topmusicandartists W/System.err: at android.os.Handler.handleCallback(Handler.java:739)
06-23 14:43:38.170 16255-16255/com.darioradecic.topmusicandartists W/System.err: at android.os.Handler.dispatchMessage(Handler.java:95)
06-23 14:43:38.170 16255-16255/com.darioradecic.topmusicandartists W/System.err: at android.os.Looper.loop(Looper.java:211)
06-23 14:43:38.170 16255-16255/com.darioradecic.topmusicandartists W/System.err: at android.app.ActivityThread.main(ActivityThread.java:5389)
06-23 14:43:38.170 16255-16255/com.darioradecic.topmusicandartists W/System.err: at java.lang.reflect.Method.invoke(Native Method)
06-23 14:43:38.170 16255-16255/com.darioradecic.topmusicandartists W/System.err: at java.lang.reflect.Method.invoke(Method.java:372)
06-23 14:43:38.170 16255-16255/com.darioradecic.topmusicandartists W/System.err: at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1020)
06-23 14:43:38.170 16255-16255/com.darioradecic.topmusicandartists W/System.err: at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:815)
그냥 확인 그 대상에서 "추적"! – himanshu1496
전체 json 응답을 게시 할 수 있습니까 ?? 그리고 당신은 모든 요청에 대해 "추적"객체를 얻었는지 확신 할 수 있습니까? 일부 응답에서는 null이 될 수 없습니까? – himanshu1496
json 응답이 첫 번째 게시물에 업로드되었습니다. 다른 모든 것이 잘 작동하기 때문에 null이 될 수 있다고 생각하지 않습니다. – DaxHR