Android VideoView恢复并seekTo

我在我的应用程序中使用VideoView播放视频。 在点击一个按钮时,它会记录视频的当前位置,并且该应用会通过一些URL打开浏览器。 按下后退按钮后,该应用程序会回到视频应用程序,并从停止播放的位置恢复视频。

我查看了Android Activity的生命周期,并看到一旦视频活动进入前台,就会调用onStart()方法。 所以我在onStart()中创建了我的布局,并通过查找当前位置来播放视频。

我的问题是,当视频恢复时,它从一开始缓冲,然后寻求。 既然它已经第一次缓冲了,有没有办法在搜索时再次消除缓冲?

谢谢克里斯


我有个类似的问题。 我有一个OnPreparedListener,在开始之前执行seekTo。 seekTo的工作原理除了视频最开始出现音频故障,就好像它开始播放然后搜索一样。 我不知道我的代码是否会帮助描述缓冲问题,但它可能有助于说明问题。

  mVideoView.setVisibility(View.VISIBLE);
  //get current window information, and set format, set it up differently, if you need some special effects
  getWindow().setFormat(PixelFormat.TRANSLUCENT);
  //mVideoView.setVideoURI(Uri.parse(path));
  mVideoView.setVideoPath(path);
  //get focus, before playing the video.
  mVideoView.requestFocus();
  mVideoView.setOnPreparedListener(new MediaPlayer.OnPreparedListener() {
        @Override
           public void onPrepared(MediaPlayer mp) {                         
           mVideoView.seekTo(mImageSeek);
           mVideoView.start();
        }
     });

定义您的资源videoview然后使用此代码

videoview = (VideoView) findViewById(R.id.videoview_play);
videoview.setVideoPath(dir + videoName);
//get focus, before playing the video.
videoview.setMediaController(new MediaController(this));
videoview.requestFocus();
videoview.setOnPreparedListener(new MediaPlayer.OnPreparedListener() {
                                       public void onPrepared(MediaPlayer mp){                         
                                         videoview.seekTo(5000);
                                         videoview.start();
                                       }
                                });

你必须添加.setMediaController(new MediaController(this));

videoview.requestFocus();

在使用PrepareListener之前

希望它能帮助你

链接地址: http://www.djcxy.com/p/46483.html

上一篇: Android VideoView resume and seekTo

下一篇: php + curl + multipart/form