Android getDuration для видео получает разные значения в разных версиях
Я пытаюсь воспроизвести следующее видео на всех устройствах. Проблема в том, что с Android 4.1.2 getDuration составляет 1476000 AKA 24:36 минут. С Android 5.0.2 getDuration возвращает 1546347 AKA 25:46 минут.
Таким образом, на Android 4.1.2 реальная проблема заключается в том, что видео продолжает воспроизводиться после "завершения". Но реальность такова, что видео должно иметь getDuration, как на Android 5.0.2. У кого-нибудь здесь есть какие-либо подсказки?
Чтобы увидеть проблему пользовательского интерфейса:
Код ниже:
private void crearVideoPlayer(String videoURL) {
// Find your VideoView in your video_main.xml layout
videoview = (VideoView) findViewById(R.id.VideoView);
videoControls = new MediaController(this);
videoview.setMediaController(videoControls);
// Start the MediaController
videoControls.setAnchorView(videoview);
// Get the URL from String VideoURL
Uri video = Uri.parse(videoURL);
videoview.setOnCompletionListener(this);
videoview.setOnTouchListener(this);
videoview.setVideoURI(video);
videoview.requestFocus();
videoview.setOnPreparedListener(new MediaPlayer.OnPreparedListener() {
// Close the progress bar and play the video
public void onPrepared(MediaPlayer mp) {
pDialog.dismiss();
videoview.start();
}
});
}