Android Exoplayer 以编程方式“前进”、“倒带”

Vin*_*ash 1 android exoplayer

我的 Android 应用程序中有 exoplayer 并希望以编程方式执行“前进”、“倒带”,并且这两个按钮不在控制视图布局中。

这两个按钮在 exoplayer 视图之外,但在屏幕中,当用户单击“前进”或“倒带”时,它将相应地工作。

一些博客给出了解决方案,但都用于控制视图,例如:

app:fastforward_increment="30000"
app:rewind_increment="30000"
Run Code Online (Sandbox Code Playgroud)

但就我而言,按钮完全在播放器视图之外。

之前在这里问过同样的问题,但没有适当的解决方案。

附截图: 在此处输入图片说明

尝试了以下代码但没有得到任何影响:

//switch case onClick listener for 'Forward' and 'Rewind'
case R.id.text_view_rewind:
    simpleExoPlayerView.setRewindIncrementMs(5000);
    break;
case R.id.text_view_forward:
     simpleExoPlayerView.setFastForwardIncrementMs(5000);
     break;
Run Code Online (Sandbox Code Playgroud)

Kaa*_*edi 13

对于版本,2.16.1您可以这样设置:

val player = ExoPlayer.Builder(this)
            .setSeekBackIncrementMs(10000)
            .setSeekForwardIncrementMs(10000)
            .build()
Run Code Online (Sandbox Code Playgroud)


Pet*_*ham 6

对于 Kotlin 团队:

player.seekTo(player.currentPosition + 5000)
Run Code Online (Sandbox Code Playgroud)

需要注意的重要事项:您不必担心超出视频范围。例如,如果您按倒退 10 秒,但您只在视频的第 5 秒,它不会转到 -5 秒,而是转到 0。与在视频结尾按快进相同。


Asu*_*ath 0

您需要使用seekTo(Position)

 int p = player.getCurrentPosition();
 p = p + 5000; // for rewind use -5000
 player.seekTo(p);
Run Code Online (Sandbox Code Playgroud)

然后更新进度。