https://www.googleapis.com/youtube/v3/videos?part=statistics&id={{VIDEO-ID}}&key={{YOUR-KEY}}
在用于统计的 JSONObject 下是一个名为“viewCount”的字段
帮助您的文档:https://developers.google.com/youtube/v3/docs/videos#resource
如果使用 REST API 客户端
这是添加统计部分时的示例:
{
"kind": "youtube#videoListResponse",
"etag": etag,
"pageInfo": {
"totalResults": integer,
"resultsPerPage": integer
},
"items": [
{
"kind": "youtube#video",
"etag": etag,
"id": string,
"statistics": {
"viewCount": unsigned long,
"likeCount": unsigned long,
"dislikeCount": unsigned long,
"favoriteCount": unsigned long,
"commentCount": unsigned long
}
}
]
只需获取名为“statistics”的 JSONObject,然后直接访问字段“viewCount”即可。
JSONArray items = response.getJSONArray("items");
JSONObject statistics = items.getJSONObject(0).getJSONObject("statistics");
Long views = statistics.getLong("viewCount");
编辑:显示实际响应和正确访问
如果使用 Youtube API v3 模块
在 app build.gradle 文件夹中将 Youtube API v3 依赖项添加到您的项目中:
dependencies {
compile 'com.google.apis:google-api-services-youtube:v3-rev152-1.21.0'
}
这是您需要的头文件或 jar 文件。然后你可以像我上面展示的那样实例化一个 YouTube 对象:
YouTube youtube = new YouTube.Builder(new NetHttpTransport(), new JacksonFactory(), new HttpRequestInitializer());
YouTube.Videos.List videoRequest = youtube.videos().list("contentDetails");
videoRequest.setId("SOME-VIDEO-ID");
videoRequest.setFields("items/contentDetails");
videoRequest.setKey("YOUR-API-KEY");
VideoListResponse response = videoRequest.execute(); //blocking call, ensure to perform off ui thread via AsyncTask
List<Video> videosList = response.getItems();
if(videosList != null && videosList.size() > 0){
Video video = videosList.get(0);
VideoStatistics statistics = video.getStatistics();
BigInteger viewCount = statistics.getViewCount();
}
文档:https://developers.google.com/resources/api-libraries/documentation/youtube/v3/java/latest/com/google/api/services/youtube/model/Video.html#getStatistics()