繁体   English   中英

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

[英]How to pause ExoPlayer 2 playback and resume (PlayerControl was removed)

ExoPlayer < 2.x有一个带有pause()resume()函数的PlayerControl类,但它被删除了。 我找不到在ExoPlayer 2上执行此操作的方法。

如何暂停和恢复播放?

您可以使用void setPlayWhenReady(boolean playWhenReady)
如果 Exo 准备好了,传递false将暂停播放器。 传递true将恢复它。 您可以使用getPlaybackState()检查播放器的状态。

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

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

播放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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM