android - 在Android中集成YouTube播放列表

标签 android youtube youtube-api playlist

我想将youtube播放列表集成到Android中,以便当用户打开播放列表时显示该播放列表的所有视频。以下是将youtube视频集成到android的工作代码。在这里我在loadVideo()方法中提供了视频ID。我不知道如何整合播放列表。.我想知道如何进行播放?

public class YoutubeActivity2 extends YouTubeBaseActivity implements
        YouTubePlayer.OnInitializedListener {

    private YouTubePlayer YPlayer;
    private static final String YoutubeDeveloperKey = "";
    private static final int RECOVERY_DIALOG_REQUEST = 1;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_you_tube_api);
        final ActionBar ab = getActionBar();
        ab.hide();
        YouTubePlayerView youTubeView = (YouTubePlayerView) findViewById(R.id.youtube_view);
        youTubeView.initialize(YoutubeDeveloperKey, this);
    }

    @Override
    public void onInitializationFailure(YouTubePlayer.Provider provider,
            YouTubeInitializationResult errorReason) {
        if (errorReason.isUserRecoverableError()) {
            errorReason.getErrorDialog(this, RECOVERY_DIALOG_REQUEST).show();
        } else {
            String errorMessage = String.format(
                    "There was an error initializing the YouTubePlayer",
                    errorReason.toString());
            Toast.makeText(this, errorMessage, Toast.LENGTH_LONG).show();
        }
    }

    @Override
    protected void onActivityResult(int requestCode, int resultCode, Intent data) {
        if (requestCode == RECOVERY_DIALOG_REQUEST)
        {

            getYouTubePlayerProvider().initialize(YoutubeDeveloperKey, this);
        }
    }

    protected YouTubePlayer.Provider getYouTubePlayerProvider() {
        return (YouTubePlayerView) findViewById(R.id.youtube_view);
    }

    @Override
    public void onInitializationSuccess(Provider provider,
            YouTubePlayer player, boolean wasRestored) {
        if (!wasRestored) {
            YPlayer = player;
            YPlayer.setFullscreen(true);
            YPlayer.loadVideo("2zNSgSzhBfM");
            YPlayer.play();
        }
    }
    @Override
    public boolean onCreateOptionsMenu(Menu menu) {

        getMenuInflater().inflate(R.menu.main, menu);
        return true;
    }
}

最佳答案

您应该进行数据API调用以获取该 channel 的视频,然后可以使用这些视频ID创建播放器。

这是该调用的示例:https://github.com/youtube/yt-direct-lite-android/blob/master/app/src/main/java/com/google/ytdl/MainActivity.java#L391

关于android - 在Android中集成YouTube播放列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26529304/

相关文章:

android - View 未保留可绘制的 XML 高度?

android - 使用genymotion run react native android debug open http ://10. 0.3.2:8081/debugger-ui

html - 使用轨道列表导航嵌入 YouTube 视频

iphone - 在 iPhone 应用程序中播放 youtube 视频

javascript - 使用jQuery从链接列表播放第一个youtube嵌入式视频

android - 即使请求相同,Java InputStream 哈希码每次都不同

java - Dagger2 + Mockito : How to Unit Test this scenario?

java - YouTube API Auth 类中的 Nullpointer 异常 - 使用 Java 上传视频

javascript - 如何获得YouTube视频的AspectRatio(或方向)

android - YouTube Player Api 重新加载视频从开始切换到全屏