如何暂停ExoPlayer 2播放和恢复(PlayerControl已删除)

时间:2016-11-11 20:04:53

标签: android video-streaming exoplayer

ExoPlayer < 2.x中,有PlayerControlpause()resume()个功能,但它已删除。我找不到在ExoPlayer 2上执行此操作的方法。

如何暂停和恢复播放?

3 个答案:

答案 0 :(得分:43)

您可以使用void setPlayWhenReady(boolean playWhenReady);。如果Exo准备就绪,传递假,你将暂停播放器。传递真实,你将恢复它。您可以使用getPlaybackState()

查看播放器的状态

答案 1 :(得分:17)

这是我的方式。创建两个方法并在需要时调用它们。

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();
}

答案 2 :(得分:0)

播放 player.setPlayWhenReady(true);

暂停

player.setPlayWhenReady(false);

您可以像这样检查播放状态:

private boolean isPlaying() {
return player != null
    && player.getPlaybackState() != Player.STATE_ENDED
    && player.getPlaybackState() != Player.STATE_IDLE
    && player.getPlayWhenReady();
}

这些代码来自PlayerControlView