其他分享
首页 > 其他分享> > 如何使用videoID通过Android中的Data API v3.0从youtube检索单个视频的详细信息?

如何使用videoID通过Android中的Data API v3.0从youtube检索单个视频的详细信息?

作者:互联网

我的服务器将videoID列表发送给Android.现在,我想在列表视图中显示这些视频的标题,缩略图和评论数量.我已经在网上使用GET请求https://www.googleapis.com/youtube/v3/videos?part=snippet\u0026amp;id={VIDEO_ID}\u0026amp;key={YOUR_API_KEY},但是如何在Android中执行此操作?是否有任何YouTube SDK来初始化YouTube对象?如何使用VideoID从YouTube检索此信息?

编辑:我已经找到了使用YouTube Data API Client Library for Java的方法,但它没有任何解释给出运行时错误.

这是我使用的代码

/**
 * Define a global instance of a Youtube object, which will be used
 * to make YouTube Data API requests.
 */
private static YouTube youtube;

youtube = new YouTube.Builder(new NetHttpTransport(), new JacksonFactory(), new HttpRequestInitializer(){
        public void initialize(com.google.api.client.http.HttpRequest request) throws IOException {
        }
    }).setApplicationName("youtube-cmdline-search-sample").build();

// Call the YouTube Data API's videos.list method to retrieve videos.
    VideoListResponse videoListResponse = youtube.videos().
        list("snippet").setId(videoId).execute();

    // Since the API request specified a unique video ID, the API
    // response should return exactly one video. If the response does
    // not contain a video, then the specified video ID was not found.
    List<Video> videoList = videoListResponse.getItems();
    if (videoList.isEmpty()) {
        System.out.println("Can't find a video with ID: " + videoId);
        return;
    }
    Video video = videoList.get(0)
    // Print information from the API response.
}

解决方法:

YouTube提供(至少)两个与您的问题相关的官方图书馆:

> YouTube Android Player API
> YouTube Data API Client Library for Java

顾名思义,第一个库是专为Android平台开发的.它的重点是通过提供播放器框架,使您能够将视频播放功能整合到应用程序中.如果您的目标是让用户只是简单地播放YouTube视频,那么最简单的方法就是实施.请注意,此库需要在设备上安装官方YouTube应用.

第二个库更通用(虽然有separate instructions for using it on Android)并提供了围绕YouTube的Data API的包装器,以便更容易地与它连接.因此,它允许您基本上完成您也可以使用Web API执行的所有操作.因此,它解决了与Android Player API不同的问题,如果您想要完全控制在自己的UI中显示视频数据的方式,则更有可能实现这一目标.

您的第三个选择是完成您为基于Web的解决方案所做的工作:自己进行API调用,解析响应并将相关数据绑定到UI组件.各种网络库(即Retrofit)可以极大地简化这一过程.

标签:android,youtube,youtube-api,youtube-data-api,android-youtube-api
来源: https://codeday.me/bug/20190702/1356864.html