Я пытаюсь запустить видео с определенной позиции, но VideoView ведет себя странно. Когда я запускаю такой код
videoView.seekTo(2000)
int current = videoView.getCurrentPosition()
Log.e("Current Time", String.valueOf(current))
Журнал дает мне значение 0. Он должен дать 2000, потому что это текущая позиция. Даже если я реализую onPreparedListener, это не сработает (но по-другому). Он отображает правильное значение (2000), но видео по-прежнему не ищет.
videoView.setOnPreparedListener(new MediaPlayer.OnPreparedListener() {
@Override
public void onPrepared(MediaPlayer mp)
{
videoView.getDuration();
videoView.seekTo(2000);
Log.e("Current: ", String.valueOf(videoView.getCurrentPosition()));
}
});
Как с этим бороться? Если я соберу MediaPlayer + SurfaceView, это поможет или будет вести себя так же, как VideoView?
OnSeekCompleteListener
, но похоже, что VideoView не предлагает обратные вызовы. Я думаю, что использование собственной реализации может быть лучшим решением. Или рассмотрим, например. с помощью Exoplayer? - person Christopher   schedule 27.04.2020