html5+javascript 有什么方法能让手机浏览器不休眠吗?

html5+javascript 有什么方法能让手机浏览器不休眠吗?

不用插件,只用js,有没有什么api可以使浏览器不休眠的?

阅读 18.2k
16 个回答

手机在熄灭屏幕后轮询的AJAX请求会被暂停,但貌似WebSocket不会.

试了一下noSleep.js,两个手机都不起作用

js 哪有这么高级。

如果有的话,请高手回答一下,我也想知道?

好像只有放视频的时候可以保持常亮,话说我很好奇什么需求一定要常亮屏幕。不为用户省电么?总觉得这不是一个好需求。

这个需求不好,要为用户着想

你需要明白的是js只能调用已有api来完成功能,而不是提供api功能。

就好比你不能 光用铲子,没有任何其他东西就做出饭来 一样,js在这里仅仅是一个调用工具。
这里补充一点就是能被js调用的api是哪里来的呢?

其实这是浏览器实现的,浏览器是基于一些规范(如w3c 定义的一些规范,以方便跨平台、跨浏览器开发)来实现,不同的浏览器实现细节不同,完成效率不同。

再者浏览器在实现时也受限与系统(软硬件,例如在IOS下,所有的浏览器其实都是用的safari IOS内核进行HTML渲染和javascript运行时,仅仅一些UI以及特殊的功能进行了改变)。

所以想用html5+javascript 实现一个功能,首先看是否有浏览器直接支持,这样可以直接调用,如果不行,则看该功能是否能够分解为若干步骤,通过组合来实现(模拟),所有的步骤必须是浏览器(或者可以通过浏览器扩展)支持的(落脚到对应系统支持的),否则这样的功能在该系统下就无法实现,比如你不能直接在IOS上播放flash,后来有人研究了flash格式,发现可以分解成系列一般浏览器操作来模拟,就可以在IOS上播放了 等等。

新手上路,请多包涵

理论上是不能,你没办法调取设备设置权限,如果能的话,那么手机就太不安全了

js本身没有这样的权限,你需要通过一些应用中间件提供的API来访问,比如cordova这种

一般网页在放视频的时候可以常亮,那可不可以在网页的某个不显眼的地方,建一个几像素的小窗口,在网页一加载的时候就循环播放视频呢,视频可以设置静音,显示隐藏,物理空间不隐藏,我是js初学者。懂得不多,不知道有没有哪位前辈这么无聊尝试过啊?哈哈哈

最近在作微信公众号小游戏,遇到这个问题,好坑....
添加不可见 video 也不行,会被微信内置浏览器自动提出来,无法自动的隐藏播放,会被提出来,单独播放....

好坑,还有有什么奇巧淫技?

图片描述

新手上路,请多包涵

ios播放间隔性的播放声音可以做到不锁屏, 但是android目前还找不到好的解决方案

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题