YouTube Web如何阻止从Safari iOS的控制中心播放

时间:2019-06-04 15:07:26

标签: javascript ios

当浏览器进入后台时,我试图在Safari for iOS上停止视频。我可以通过Page Visibility API来做到这一点。

在iOS的主屏幕上,如果我打开Control Center并按播放按钮,则它通常会播放上一个Safari的内容。

我想要实现的是类似Youtube Web移动的行为:它能够防止这种行为。如果使用运行Youtube的标签页关闭Safari,则无法按控制中心中的播放键来播放内容。

我已经尝试过e.preventDefault()事件上的行为。 我尝试在pageshow / pagehide中插入标志(正如我在another SOW answer中发现的那样,但是这些事件似乎在后台运行时未调用。

此外,我无法通过Page Visibility API进行控制并在其回调中插入标志:即使在后台运行时调用了事件,“覆盖” HTMLMediaElement.play()也无法正常工作,并且存在问题iOS的控制中心。

就好像它不使用HTMLMediaElement.play() ...

有人知道如何从Web覆盖控制中心的“播放按钮”行为吗?谢谢。

1 个答案:

答案 0 :(得分:0)

当浏览器进入后台时,Youtube似乎完全卸载了内容,并从用户“中断”点开始重新加载了内容。 我决定以同样的方式。

此外,相同的iOS行为似乎也在Android通知中心上发生(当Chrome向您显示一个标签正在复制音频时)。