0

我想加载视频并将播放器设置为暂停状态。

我这样做是这样的:

public void onInitializationSuccess(YouTubePlayer.provider provider, final YouTubePlayer player, boolean wasRestored) {
    player.loadVideo("dfsafas");
    player.setPlayerStateChangeListener(new PlayerStateChangeListener() {
        @Override
        public void onVideoStarted() {
            player.pause();
        }
        //...
    });
}

问题是:它不起作用 8-)。这意味着视频在加载后立即播放。当我添加一点延迟时,例如Thread.sleep(5000);,视频会正确暂停。

pause为什么我在PlayerStateChangeListenersonVideoStarted或者onVideoLoadedcallback的时候,视频一开始就没有停止?

4

3 回答 3

1

尝试这个:

player.setPlaybackEventListener(new PlaybackEventListener() {

    private boolean interceptPlay = true;

    @Override
    public void onPlaying() {
        if (interceptPlay) {
            player.pause();
            interceptPlay = false;
        }
    }

    @Override
    public void onStopped() {}

    @Override
    public void onSeekTo(int arg0) {}

    @Override
    public void onPaused() {}

    @Override
    public void onBuffering(boolean arg0) {}
});
于 2013-11-18T17:15:28.140 回答
1

对我来说,有效的是:

player.setPlayerStateChangeListener(new YouTubePlayer.PlayerStateChangeListener() {
        ...

        @Override
        public void onLoaded(String s) {
            player.pause();
        }

        ...
});
于 2016-09-14T02:37:34.940 回答
0

onVideoStarted 在播放器开始播放视频时被调用。

如果您尝试在 onVideoStarted 的第一行暂停视频,它将在开始后立即停止。

尝试在另一个事件上暂停。

可以在按钮或其他东西上。

于 2013-08-20T14:02:06.563 回答