2013-03-30 2 views
2

У меня есть этот JSON, что я хочу попасть в мой андроид приложениеРазбор объектов JSON и массивы андроид

{ 

    "json":{ 


     "albums":[{"id":"1","name":"Best Sumer colections","singer":"Dj Tiresto","genre":"Trance","mix":"yes","thumb":"alb1.png","songs": 
              [ 
              {"song":"Nothins else1","artist":"ionsuruceanu","mp3":"mp3_URL","mp4":"mp4_URL","thumb":"alb1.png"}, 
              {"song":"Nothins else2","artist":"ionsuruceanu","mp3":"mp3_URL","mp4":"mp4_URL","thumb":"alb1.png"}, 
              {"song":"Nothins else3","artist":"ionsuruceanu","mp3":"mp3_URL","mp4":"mp4_URL","thumb":"alb1.png"}, 
              {"song":"Nothins else4","artist":"ionsuruceanu","mp3":"mp3_URL","mp4":"mp4_URL","thumb":"alb1.png"}, 
              {"song":"Nothins else5","artist":"ionsuruceanu","mp3":"mp3_URL","mp4":"mp4_URL","thumb":"alb1.png"}, 
              {"song":"Nothins else6","artist":"ionsuruceanu","mp3":"mp3_URL","mp4":"mp4_URL","thumb":"alb1.png"}, 


                                   ] 
        }, 
        {"id":"2","name":"Best Sumer colections","singer":"Dj Tiresto","genre":"Trance","mix":"yes","thumb":"alb1.png","songs": 
        [ 
        {"song":"Nothins else1","artist":"ionsuruceanu","mp3":"mp3_URL","mp4":"mp4_URL","thumb":"alb1.png"}, 
        {"song":"Nothins else2","artist":"ionsuruceanu","mp3":"mp3_URL","mp4":"mp4_URL","thumb":"alb1.png"}, 
        {"song":"Nothins else3","artist":"ionsuruceanu","mp3":"mp3_URL","mp4":"mp4_URL","thumb":"alb1.png"}, 
        {"song":"Nothins else4","artist":"ionsuruceanu","mp3":"mp3_URL","mp4":"mp4_URL","thumb":"alb1.png"}, 
        {"song":"Nothins else5","artist":"ionsuruceanu","mp3":"mp3_URL","mp4":"mp4_URL","thumb":"alb1.png"}, 
        {"song":"Nothins else6","artist":"ionsuruceanu","mp3":"mp3_URL","mp4":"mp4_URL","thumb":"alb1.png"}, 


        ] 
        }, 
        {"id":"3","name":"O viatza","singer":"Maria Bieshu","genre":"Trance","mix":"no","thumb":"alb1.png","songs": 
        [ 
        {"song":"Nothins else1","artist":"ionsuruceanu","mp3":"mp3_URL","mp4":"mp4_URL","thumb":"alb1.png"}, 
        {"song":"Nothins else2","artist":"ionsuruceanu","mp3":"mp3_URL","mp4":"mp4_URL","thumb":"alb1.png"}, 
        {"song":"Nothins else3","artist":"ionsuruceanu","mp3":"mp3_URL","mp4":"mp4_URL","thumb":"alb1.png"}, 
        {"song":"Nothins else4","artist":"ionsuruceanu","mp3":"mp3_URL","mp4":"mp4_URL","thumb":"alb1.png"}, 
        {"song":"Nothins else5","artist":"ionsuruceanu","mp3":"mp3_URL","mp4":"mp4_URL","thumb":"alb1.png"}, 
        {"song":"Nothins else6","artist":"ionsuruceanu","mp3":"mp3_URL","mp4":"mp4_URL","thumb":"alb1.png"}, 


        ] 
        }, 
        {"id":"4","name":"De petrecere","singer":"Gerghe tzopa","genre":"Trance","mix":"no","thumb":"alb1.png","songs": 
        [ 
        {"song":"Nothins else1","artist":"ionsuruceanu","mp3":"mp3_URL","mp4":"mp4_URL","thumb":"alb1.png"}, 
        {"song":"Nothins else2","artist":"ionsuruceanu","mp3":"mp3_URL","mp4":"mp4_URL","thumb":"alb1.png"}, 
        {"song":"Nothins else3","artist":"ionsuruceanu","mp3":"mp3_URL","mp4":"mp4_URL","thumb":"alb1.png"}, 
        {"song":"Nothins else4","artist":"ionsuruceanu","mp3":"mp3_URL","mp4":"mp4_URL","thumb":"alb1.png"}, 
        {"song":"Nothins else5","artist":"ionsuruceanu","mp3":"mp3_URL","mp4":"mp4_URL","thumb":"alb1.png"}, 
        {"song":"Nothins else6","artist":"ionsuruceanu","mp3":"mp3_URL","mp4":"mp4_URL","thumb":"alb1.png"}, 


        ] 
        }, 
        {"id":"5","name":"De petrecere","singer":"Gerghe tzopa","genre":"Trance","mix":"no","thumb":"alb1.png","songs": 
        [ 
        {"song":"Nothins else1","artist":"ionsuruceanu","mp3":"mp3_URL","mp4":"mp4_URL","thumb":"alb1.png"}, 
        {"song":"Nothins else2","artist":"ionsuruceanu","mp3":"mp3_URL","mp4":"mp4_URL","thumb":"alb1.png"}, 
        {"song":"Nothins else3","artist":"ionsuruceanu","mp3":"mp3_URL","mp4":"mp4_URL","thumb":"alb1.png"}, 
        {"song":"Nothins else4","artist":"ionsuruceanu","mp3":"mp3_URL","mp4":"mp4_URL","thumb":"alb1.png"}, 
        {"song":"Nothins else5","artist":"ionsuruceanu","mp3":"mp3_URL","mp4":"mp4_URL","thumb":"alb1.png"}, 
        {"song":"Nothins else6","artist":"ionsuruceanu","mp3":"mp3_URL","mp4":"mp4_URL","thumb":"alb1.png"}, 


        ] 
        }, 
        {"id":"6","name":"De petrecere 2013","singer":"Gerghe tzopa","genre":"Trance","mix":"no","thumb":"alb1.png","songs": 
        [ 
        {"song":"Nothins else1","artist":"ionsuruceanu","mp3":"mp3_URL","mp4":"mp4_URL","thumb":"alb1.png"}, 
        {"song":"Nothins else2","artist":"ionsuruceanu","mp3":"mp3_URL","mp4":"mp4_URL","thumb":"alb1.png"}, 
        {"song":"Nothins else3","artist":"ionsuruceanu","mp3":"mp3_URL","mp4":"mp4_URL","thumb":"alb1.png"}, 
        {"song":"Nothins else4","artist":"ionsuruceanu","mp3":"mp3_URL","mp4":"mp4_URL","thumb":"alb1.png"}, 
        {"song":"Nothins else5","artist":"ionsuruceanu","mp3":"mp3_URL","mp4":"mp4_URL","thumb":"alb1.png"}, 
        {"song":"Nothins else6","artist":"ionsuruceanu","mp3":"mp3_URL","mp4":"mp4_URL","thumb":"alb1.png"}, 


        ] 
        } 

     ] 


    } 


} 

Но я только получаю Reading a NULL string not supported here. от LogCat. Так вот мой код, который я использую для разбора JSON:

// Creating JSON Parser instance 
     JSONParser jParser = new JSONParser(); 

     // getting JSON string from URL 
     JSONObject json = jParser.getJSONFromUrl(url); 

     try { 
      // Getting Array of albums 

      albums = json.getJSONArray(TAG_ALBUMS); 

      // looping through All albums 
      for(int i = 0; i < albums.length(); i++){ 
       JSONObject c = albums.getJSONObject(i); 

       // Storing each json item in variable 
       String album_id = c.getString(TAG_ID); 
       String album_name = c.getString(TAG_NAME); 
       String album_singer = c.getString(TAG_SINGER); 
       String album_genre = c.getString(TAG_GENRE); 
       String album_thumb = c.getString(TAG_THUMB); 

       // songs are again JSON Object 
       JSONObject songs = c.getJSONObject(TAG_SONGS); 
       String artist = songs.getString(TAG_SONG_ARTIST); 
       String mp3 = songs.getString(TAG_SONG_MP3); 
       String mp4 = songs.getString(TAG_SONG_MP4); 
       String song_thumb = songs.getString(TAG_SONG_THUMB); 
       String song_title = songs.getString(TAG_SONG_TITLE); 
       Log.v("--", "Albums \n"+" "+album_id+" "+album_name+" "+ album_genre+" "+album_singer+" "+album_thumb); 
      } 


     } catch (JSONException e) { 
      e.printStackTrace(); 
     } 

Так может кто-нибудь помочь мне решить эту проблему.

ответ

1

JSONArray songs = c.getJSONArray(TAG_SONGS);

songs является массивом JSONObjects, и вы должны быть обработкой его таким же образом вы разбираете albums.

+0

вы можете дать мне решение более подробно .. спасибо за ответ –

+0

'песни' - это массив объектов JSON, где каждый из этих объектов имеет теги mp3, mp4, artist, thumb и т. Д. – Swayam

+0

Вы делая это довольно корректно, за исключением части песни. Итак, для этого взгляните на http://stackoverflow.com/questions/9529558/how-to-parse-this-json-array-in-android. – Swayam