Android上的videoView问题

时间:2011-09-01 21:33:50

标签: android android-sdk-2.3

我在Android上使用2个VideoViews时出现问题。

我知道我不能同时使用2个VideoView。

这是我的工作流程。

  1. 制作2个videoViews。
  2. 隐藏其中一个。
  3. 预取第一个videoView。
  4. 播放第一个VideoView。
    • 在另一个帖子中我预取第二个视频
  5. 在某些时候我切换了视频。
  6. 第二个视频工作正常。
  7. 当第二个视频完成后,我切换到第一个视频。
  8. 视频从头开始播放,而不是第一个视频的最后一个状态。
  9. 我试图获取当前时间并在切换之前保存它然后当第一个视频视图返回时我使用seekTo(LastCurrenttime),但缓冲区消失了(在最后一个currentTime之前)。

    你知道缓冲区是静态的还是videoViews只使用一个缓冲区?

    为什么videoView没有保存videView的最后状态? ((currentTime或缓冲状态?

    有没有办法在不执行seekTo功能的情况下执行此操作?

1 个答案:

答案 0 :(得分:0)

我的理论是,因为第一个VideoView被隐藏,这意味着在视图上调用suspend()和resume()。如果您在source code for VideoView中搜索“暂停”和“恢复”,则可以看到MediaPlayer实例已发布并重新分配。

我的建议是您创建一个自定义的VideoView来修改此行为。

我将展示如何在my answer to 7990784中自定义VideoView。

以此作为起点,您可以将resume()函数重写为避免对openVideo()的调用。