iOS11 的 JavaScript 中的低功耗模式检测?

Arn*_*der 5 javascript safari ios

是否有 JavaScript API 来检测 iOS 11 Safari 的低功耗模式?我还没有找到有关该主题的任何信息。

小智 8

.catch((error) => {
  if (error.name === "NotAllowedError") {
     //low power mode
}
Run Code Online (Sandbox Code Playgroud)

我在同样的概念上苦苦挣扎,一个有用的链接被证明是这个浏览器检查:https ://video-dev.github.io/can-autoplay/

结果:视频静音(错误“NotAllowedError”:当前上下文中的用户代理或平台不允许该请求,可能是因为用户拒绝了权限。

所以我现在有一个承诺,检查视频是否正在播放,是否很棒。否则我会发现 NotAllowedError,似乎每次都有效。


Tam*_*gel 6

iOS 上的 Safari不支持\xc2\xa0 访问低功耗模式设置的状态(甚至不支持访问电池电量)。

\n


小智 6

完成此操作的解决方法是:

将视频(隐藏)放入自动播放“打开”的网页中,然后检测该视频的“暂停”事件。每当它被调用时,“电源模式打开”。

这是脚本:

const videoElement = document.getElementById('ID_of_video');
    videoElement.addEventListener('suspend', () => {
        // suspend invoked
        // show play button
        // iphone is in low power mode
    });

    videoElement.addEventListener('play', () => {
        // video is played
        // remove play button UI
        // iphone is not in low power mode
    });
Run Code Online (Sandbox Code Playgroud)

您还可以在此处阅读说明:打开低功耗模式时播放视频

  • 不幸的是这对我不起作用。即使没有打开低功耗模式,也会触发挂起事件。你是如何让它发挥作用的。尽管视频自动播放,我也没有收到播放事件。 (4认同)