2015-12-21 83 views
0

我的應用程序中有一個Youtube播放器。我爲此播放器設置了setPlayerStateChangeListener,並且在視頻結尾事件(onVideoEnd())中,我希望播放下一個提示視頻。Android:在onVideoEnd播放下一個視頻()

這是我迄今爲止...

YouTubeFragment

@Override 
public void onInitializationSuccess(YouTubePlayer.Provider provider, YouTubePlayer player, boolean restored) { 
    ... 
    player.setPlayerStateChangeListener(myPlayerStateChangeListener); 
    ... 
} 

MyPlayerStateChangeListener

package x; 

import android.util.Log; 
import com.google.android.youtube.player.YouTubePlayer; 

public final class MyPlayerStateChangeListener implements YouTubePlayer.PlayerStateChangeListener { 


    @Override 
    public void onAdStarted() { 
    } 

    @Override 
    public void onError(
      com.google.android.youtube.player.YouTubePlayer.ErrorReason arg0) { 
    } 

    @Override 
    public void onLoaded(String arg0) { 
    } 

    @Override 
    public void onLoading() { 
    } 

    @Override 
    public void onVideoEnded() { 
     Log.d("onVideoEnded()", "Video has ended"); 
    } 

    @Override 
    public void onVideoStarted() { 
    } 
} 

當視頻結束,內onVideoEnded日誌消息()成功顯示。我正在努力讓自己的頭腦在這個PlayerStateChangeListener中,我可以在我的youtube播放器上運行hasNext(),play()等。

回答

1

其實你可以使用以下命令:

private static YouTubePlayer player; 

在onInitializationSuccess()設置這個變量。

this.player = player; 

現在在回調onVideoEnd()使用播放器的靜態版本來執行,你需要像提示新的視頻的操作。

+0

感謝您的回答。你有可能以代碼形式擴大你的答案嗎? – Charlieabee

+0

讓我知道它是否適用於您。 – g90

+0

我在哪裏添加第一行代碼? onInitializationSucess()之前? – Charlieabee