gpt4 book ai didi

使用 GSON 解析 Android Youtube API JSON-C

转载 作者:搜寻专家 更新时间:2023-11-01 09:03:05 25 4
gpt4 key购买 nike

我正在尝试开发一个 Android 应用程序来检索特定用户的视频,我想使用 JSON-C 响应格式来保持较小的大小。一旦我收到我的回复,格式如下:

{
"apiVersion":"2.1",
"data":{
"updated":"2012-12-02T14:40:07.424Z",
"totalItems":175,
"startIndex":1,
"itemsPerPage":25,
"items":[
{
"id":"rnzJ5x3sWyk",
"uploaded":"2012-12-01T20:19:07.000Z",
"updated":"2012-12-01T20:19:07.000Z",
"uploader":"user",
"category":"News",
"title":"L'ALLUVIONE HA DISTRUTTO LE ROULOTTE DELLE VACANZE",
"description":"Ad Albinia,in un rimessaggio per roulotte, il proprietario, i volontari e i vacanzieri che sono soliti passare l'estate qui, si sono rimboccati le maniche per ripulire dal fango le tante \"case delle vacanze\" distrutte dall'alluvione",
"thumbnail":{
"sqDefault":"http://i.ytimg.com/vi/rnzJ5x3sWyk/default.jpg",
"hqDefault":"http://i.ytimg.com/vi/rnzJ5x3sWyk/hqdefault.jpg"
},
"player":{
"default":"http://www.youtube.com/watch?v=rnzJ5x3sWyk&feature=youtube_gdata_player",
"mobile":"http://m.youtube.com/details?v=rnzJ5x3sWyk"
},
"content":{
"5":"http://www.youtube.com/v/rnzJ5x3sWyk?version=3&f=user_uploads&app=youtube_gdata",
"1":"rtsp://v1.cache2.c.youtube.com/CigLENy73wIaHwkpW-wd58l8rhMYDSANFEgGUgx1c2VyX3VwbG9hZHMM/0/0/0/video.3gp",
"6":"rtsp://v6.cache2.c.youtube.com/CigLENy73wIaHwkpW-wd58l8rhMYESARFEgGUgx1c2VyX3VwbG9hZHMM/0/0/0/video.3gp"
},
"duration":136,
"viewCount":2,
"favoriteCount":0,
"commentCount":0,
"accessControl":{
"comment":"allowed",
"commentVote":"allowed",
"videoRespond":"moderated",
"rate":"allowed",
"embed":"allowed",
"list":"allowed",
"autoPlay":"allowed",
"syndicate":"allowed"
}
},
and others items....

当我设置我的模型类以反序列化它时它应该是什么样子我是否必须包括所有元素,即使是那些我不感兴趣的元素?

 public class SearchResponse {

public Container data;

}

指的是

import java.util.ArrayList;

import com.google.gson.annotations.SerializedName;

public class Container {

public ArrayList<Items> results;

@SerializedName("totalItems")
public int totalItems;

@SerializedName("startIndex")
public int startIndex;

@SerializedName("itemsPerPage")
public int itemsPerPage;
}

对于每个项目:

import com.google.gson.annotations.SerializedName;

public class Items {

@SerializedName("id")
public String id;

@SerializedName("uploaded")
public String uploaded;

@SerializedName("category")
public String category;

@SerializedName("title")
public String title;

@SerializedName("description")
public String description;

public Thumbnail thumbnail;

@SerializedName("duration")
public int duration;


}

对于每个缩略图

import com.google.gson.annotations.SerializedName;

public class Thumbnail {

@SerializedName("sqdefault")
public String sqdefault;

@SerializedName("hqdefault")
public String hqdefault;

}

我认为是“数据”部分让我很生气。

如果你已经这样做了,有人可以帮忙或给我一些例子吗?

提前致谢

最佳答案

这个:

public ArrayList<Items> results;

需要:

public ArrayList<Items> items;

或:

@SerializedName("items") public ArrayList<Items> results;

它应该可以正常工作。

不,您不必在 POJO 中显示所有字段。 JSON 中存在的任何您没有的字段都将被静默忽略。

关于使用 GSON 解析 Android Youtube API JSON-C,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13791593/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com