Android上的videoView问题

我在Android上使用2个VideoViews时遇到问题。

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

这是我的工作流程。

  • 创建2个videoViews。
  • 隐藏其中的1个。
  • 预取第一个videoView。
  • 播放第一个VideoView。
  • 在另一个线程中,我预取第二个视频
  • 在某些时候,我切换videoViews。
  • 第二个视频工作正常。
  • 当第二个视频完成后,我切换到第一个视频。
  • 视频从开头播放开始播放,而不是第一个视频的最后一个状态。
  • 我尝试获取当前时间并将其保存在切换器之前,然后当第一个视频视图返回时,我使用seekTo(LastCurrenttime),但缓冲区已消失(在上次currentTime之前)。

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

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

    有没有办法做到这一点,而不做seekTo功能?


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

    我的建议是你创建一个自定义的VideoView来修改这种行为。

    我在7990784的答案中展示了如何自定义VideoView。

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

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

    上一篇: Problem with videoView on Android

    下一篇: Android VideoView orientation change with buffered video