На вкладке галактики onCompletionListener videoView не получает вызов
Для просмотра видео в Android я добавил слушателя медиа-плеера, например, onPreparedListener, onCompletionListener и т.д.
Но когда видео завершается, onCompletionListener не получает вызов.
Также мы замечаем, что что-то onCompletionListener вызываются, а иногда нет.
Эта проблема возникает только для планшета Samsung Galaxy
Версия ОС 4.1.2.
И тот же код работал правильно на другом устройстве Samsung, таком как S2, S3, S4 и т.д.
Есть ли у кого-нибудь идеи?
Ответы
Ответ 1
Два комментария.
-
Чтобы проверить, вызывает ли проблема VideoView. потому что интерфейс OnCompletionListener
VideoView - это всего лишь оболочка для интерфейса MediaPlayer OnCompletionListener
, вы можете использовать MediaPlayer непосредственно для воспроизведения видеофайла и проверить, работает ли его OnCompletionListener каждый раз.
- Если происходит то же самое, значит, MediaPlayer не может правильно воспроизводить видеофайл, возможно, вам нужно тщательно проверить обратный вызов onError()
.
-
проверьте, указывает ли видеофайл или Uri на поврежденный видеофайл, вы можете использовать инструменты, такие как mp4dump, для удаления информации о файле.
Надеюсь, что это поможет.
Ответ 2
Я не уверен, но просто трюк, который может решить вашу проблему:
найдите общую длину видео и проверьте, достигнута ли текущая позиция. если условие удовлетворяет, скопируйте код onCompletion здесь.