2016-11-11 337 views

回答

15

可以使用void setPlayWhenReady(boolean playWhenReady);。如果Exo准备好了,传递false将会暂停播放器。传递正确,你会恢复它。您可以使用getPlaybackState()

+1

请与代码回答所以可以正确地理解它 –

+2

要暂停,并用相同的按钮,您可以使用玩!'player.setPlayWhenReady(player.getPlayWhenReady() );'。 – Virusman

2

这是我的方式检查球员的状态。创建两个方法并在需要时调用它们。

private void pausePlayer(){ 
    player.setPlayWhenReady(false); 
    player.getPlaybackState(); 
} 
private void startPlayer(){ 
    player.setPlayWhenReady(true); 
    player.getPlaybackState(); 
} 

称他们在这里

@Override 
protected void onPause() { 
    super.onPause(); 
    pausePlayer(); 

} 

@Override 
protected void onResume() { 
    super.onResume(); 
    startPlayer(); 
} 
+8

为什么在“播放准备就绪”之后改变了'player.getPlaybackState();'后? – Caipivara

+0

Exoplayer采取'1秒/ 2sec'上恢复'@Override 保护无效的onResume(){ super.onResume(); startPlayer(); }'我如何解决这个音频播放,但视频开始晚了 –