我收到來自Flickr API的JSON響應是這樣的:
{
"photos": {
"page": 1,
"pages": 1,
"perpage": 100,
"total": 2,
"photo": [
{
"id": "14774811932",
"owner": "[email protected]",
"secret": "cbb99f0039",
"server": "3853",
"farm": 4,
"title": "Weltschmerz",
"ispublic": 1,
"isfriend": 0,
"isfamily": 0,
"date_faved": "1432471819"
},
{
"id": "13274800365",
"owner": "[email protected]",
"secret": "b652859e6a",
"server": "3688",
"farm": 4,
"title": "cactus desert",
"ispublic": 1,
"isfriend": 0,
"isfamily": 0,
"date_faved": "1432466782"
}
]
},
"stat": "ok"
}
,我需要得到一個ArrayList兩個Photo
對象。
我的代碼是:
Helper helper = new Helper(this);
String jsonString = helper.loadJSONFromAsset();
Gson gson = new Gson();
Photos photos = gson.fromJson(jsonString,
new TypeToken<Photos>() { }.getType());
// ArrayList<Photo> photos = gson.fromJson(jsonString,
// new TypeToken<ArrayList<Photo>>(){}.getType());
目前我加載從資產的文件。當這個工作我就改成了Flickr API
照片類:
public class Photos {
Integer page;
Integer pages;
Integer perpage;
Integer total;
ArrayList<Photo> photos;
String stat;
//getters and setters here
我的理解是,我必須先提取photos
項目,然後從項目中提取陣列photo
所以我可以得到我需要的ArrayList。
你的照片類是什麼樣的? –
@BidhanA剛剛用代碼更新了答案。 – vicolored