首页 > 解决方案 > 如何在 Youtube 视频的 Android Youtube API 中删除相关视频?

问题描述

我用 Youtube 视频开发了 Android。视频完成后,我收到了来自 youtube 的建议(您可能也喜欢这些视频)。我想删除 Youtube 视频中的相关视频。

this.video_youtube_player =(YouTubePlayerView) findViewById(R.id.video_youtube_player);
        this.onInitializedListinner =  new YouTubePlayer.OnInitializedListener(){
            @Override
            public void onInitializationSuccess(YouTubePlayer.Provider provider, YouTubePlayer youTubePlayer, boolean b) {
                youTubePlayer.loadVideo(new YouTubeHelper().extractVideoIdFromUrl(original));
                youTubePlayer.setPlayerStyle(YouTubePlayer.PlayerStyle.MINIMAL);

                youTubePlayer.setPlayerStateChangeListener(new YouTubePlayer.PlayerStateChangeListener() {
                    @Override
                    public void onLoading() {                    }

                    @Override
                    public void onLoaded(String s) {                  }

                    @Override
                    public void onAdStarted() {                  }

                    @Override
                    public void onVideoStarted() {                }

                    @Override
                    public void onVideoEnded() {                    }

                    @Override
                    public void onError(YouTubePlayer.ErrorReason errorReason) {                   }

                });
            }

            @Override
            public void onInitializationFailure(YouTubePlayer.Provider provider, YouTubeInitializationResult youTubeInitializationResult) {

            }
        };
        video_youtube_player.initialize(Global.Youtube_Key,onInitializedListinner);
    }
    public class YouTubeHelper {

        final String youTubeUrlRegEx = "^(https?)?(://)?(www.)?(m.)?((youtube.com)|(youtu.be))/";
        final String[] videoIdRegex = { "\\?vi?=([^&]*)","watch\\?.*v=([^&]*)", "(?:embed|vi?)/([^/?]*)", "^([A-Za-z0-9\\-]*)"};

        public String extractVideoIdFromUrl(String url) {
            String youTubeLinkWithoutProtocolAndDomain = youTubeLinkWithoutProtocolAndDomain(url);

            for(String regex : videoIdRegex) {
                Pattern compiledPattern = Pattern.compile(regex);
                Matcher matcher = compiledPattern.matcher(youTubeLinkWithoutProtocolAndDomain);

                if(matcher.find()){
                    return matcher.group(1);
                }
            }

            return null;
        }

请为此提供解决方案,我在上面添加了小片段,如何禁用它们并单击这些视频打开 Youtube 应用程序以及如何防止它在单击它们时打开 youtube 应用程序/ youtube 网站。

youtube 可以接受 AdMob 吗?提前致谢。

标签: androidyoutubeyoutube-apiandroid-youtube-api

解决方案


如果你在onVideoEnded()函数中调用这个函数,你可以克服这个问题。

private void seekToZero(YouTubePlayer player){
    player.seekToMillis(0)
    player.play()
    player.pause()
}

推荐阅读