2016-06-14 37 views
0

如何解析JSON數組我有這樣的http://www.jsonschema2pojo.org/ 和我的代碼生成獲取數據價值,這http://androiddocs.ru/api/friends.json與改造

{ 
"data":"dbfriends", 
"friends": [{"id":"1","name":"Andrew","city":"Moscow","contacts":{"mobile":"+7   0000000","email":"[email protected]","skype":"andrew"}},  {"id":"2","name":"Ivan","city":"Kiev","contacts":{"mobile":"+38 0000000","email":"[email protected]","skype":"ivan"}}] 
} 

我的更新接口

public interface Friends_API { 

    String BASE_URL = " http://androiddocs.ru/api/"; 

    @GET("friends.json") Call<Friends> getFriends(); 



    class Factory { 

     private static Friends_API service; 

     public static Friends_API getInstance(){ 
      if (service == null) { 
       Retrofit retrofit = new Retrofit.Builder() 
         .addConverterFactory(GsonConverterFactory.create()) 
         .baseUrl(BASE_URL) 
         .build(); 

       service = retrofit.create(Friends_API.class); 
       return service; 
      } else { 
       return service; 
      } 
     } 
    } 
} 

POJO文件JSON文件:

Friends_API.Factory.getInstance().getFriends().enqueue(new Callback<Friends>() { 
    @Override 
    public void onResponse(Call<Friends> call, Response<Friends> response) { 
     String getData = response.body().getData(); 
    } 

    @Override 
    public void onFailure(Call<Friends> call, Throwable t) { 

    } 
} 

我無法理解我如何獲得價值:id,name ,城市...

感謝您的幫助!

+0

翻新已經使用Gson解析了JSON。你現在可以直接訪問一個Java對象 –

+0

我不能理解(我怎麼能做到這一點 –

回答

0

可以使用得到檢索響應數據:

Friends friends = response.body(); 

然後你就可以使用friends.getFriends()對象檢索List<Friend>。現在你可以遍歷這個朋友列表,並可以獲得身份證,姓名,城市或聯繫方式。