播放器恢复/活动恢复后 Youtube 控件(播放/暂停)不起作用
Posted
技术标签:
【中文标题】播放器恢复/活动恢复后 Youtube 控件(播放/暂停)不起作用【英文标题】:Youtube controls (play/pause) don't work after player is restored/activity is resumed 【发布时间】:2016-05-03 09:44:37 【问题描述】:我有一个包含YouTubePlayerSupportFragment
的活动来播放 youtube 视频。
youtube 播放器的样式设置为CHROMELESS
(只有视频,没有控件),播放由我自己在播放器视图之外的自定义播放/暂停按钮控制。在我出于某种原因离开视频活动然后再回来之前,一切都按预期工作。
在离开活动时,视频会暂停 - 正如预期的那样 - 但在返回到它之后,请求播放器到 player.play()
什么都不做。没有错误也没有异常,它什么也不做。 Play()
只会在我加载新视频后再次工作..
我尝试改用YouTubePlayerFragment
,但结果是一样的。但是,当使用DEFAULT
样式时,按默认播放按钮显然会从先前的位置重新加载视频(我看到缓冲区被刷新)并按预期工作。这让我相信他们以某种方式直接在他们的 UI 控件代码上而不是在播放器 API 上处理它。..
我可以在 SDK 的自定义控件示例上重现此问题,只需启动一个视频,按下最近的键并返回它,所以我认为可以安全地假设这是一个错误.. 有没有人能够解决这个问题?有什么方法可以检测到视频需要重新加载,而这还没有解决?
信息:我正在使用 youtube 的 android player API v1.2.2 和最新的 youtube 应用程序 v10.49.59
【问题讨论】:
【参考方案1】:几个小时后,我找到的唯一解决方案是在暂停事件中保存视频位置,并在 PostResume 事件(当 YouTubeFragment 恢复时)重新加载视频 (player.loadVideo)。但我不知道这是否是唯一/最好的解决方案。
【讨论】:
以上是关于播放器恢复/活动恢复后 Youtube 控件(播放/暂停)不起作用的主要内容,如果未能解决你的问题,请参考以下文章