我的应用程序出现问题,我想像这样使用该seekTo()功能VideoView:
videoView.seekTo(time);
videoView.start();
它在 中运行良好android 2.2,但在或更高版本中不起作用android 2.3......有人会告诉我为什么?它困扰了我好几天。
我的应用程序出现问题,我想像这样使用该seekTo()功能VideoView:
videoView.seekTo(time);
videoView.start();
它在 中运行良好android 2.2,但在或更高版本中不起作用android 2.3......有人会告诉我为什么?它困扰了我好几天。
VideoView.start()仅在查找完成后才应调用 to 。调用VideoView.seekTo()启动搜索但不幸的VideoView是不支持OnSeekCompleteListener通知搜索实际完成所需的。
您可以自定义VideoView以支持OnSeekCompleteListener,如我对 7990784 的回答所示。
onSeekComplete()然后您可以通过调用注册接收setOnSeekCompleteListener()。然后,您的侦听器实现应调用VideoView.start().
为了正确操作该方法seekTo(),视频状态应处于PlaybackState。
在VideoView 此处查看源以获取更多信息。
您是否尝试过Vitamio库中的 VideoView 类?
该解决方案应该有效。问题可能是里面的媒体播放videoView器没有创建。
通过改变设备的方向很容易测试。我就是这样测试的。
videoView.setOnPreparedListener(onPreparedListener);
private MediaPlayer.OnPreparedListener onPreparedListener = new MediaPlayer.OnPreparedListener() {
public void onPrepared(MediaPlayer mp) {
mp.seekTo(videoPosition);
}
};