如何从youtube获取缩略图

Mor*_*zov 1 java youtube android

youtube中视频的缩略图

我想添加从视频添加图像的功能,我在我的方法useLinkInput中获得.

现在我有一个对话框,其中有下一个代码:

 public void onClick(DialogInterface dialog, int which) {
            dialog.dismiss();
            Toast.makeText(getContext(), "??", Toast.LENGTH_SHORT).show();
            String string = input.getText().toString();
            useLinkInput(string);
        }
Run Code Online (Sandbox Code Playgroud)

方法useLinkInput:

private void useLinkInput(String input) {
    Uri uri = Uri.parse(input);
    String videoID = uri.getQueryParameter("v");
    url = "http://img.youtube.com/vi/" + videoID +"/0.jpg";
    Log.d("url",url);
}
Run Code Online (Sandbox Code Playgroud)

当用户在对话框中粘贴链接并按下确定时,我会进入日志图像:

D/url: http://img.youtube.com/vi/null/0.jpg
Run Code Online (Sandbox Code Playgroud)

但他是空的*(没有显示图像)

Pri*_*tel 9

例如,您的YouTube视频网址如下所示.

String youtubeUrl = "https://www.youtube.com/watch?v=Rxo0Upfz48Q";
Run Code Online (Sandbox Code Playgroud)

在此url参数中v=Rxo0Upfz48Q代表视频ID.所以,在上面的url videoID是Rxo0Upfz48Q

您可以使用以下代码获取videoID.

Uri uri = Uri.parse(youtubeUrl);
String videoID = uri.getQueryParameter("v");
Run Code Online (Sandbox Code Playgroud)

现在使用videoID,你可以让url获得该YouTube视频的第一帧,如下所示.

String url = "http://img.youtube.com/vi/" + videoID +"/0.jpg";
Run Code Online (Sandbox Code Playgroud)

现在,您可以从上方的URL获取缩略图并显示在您的imageview中.