lan*_*eld 15 html javascript iphone ios auto-lock
我正在尝试编写一些代码来保持手机活着而不是在网页上睡觉.
在我的搜索中,我发现这篇文章:防止iOS移动游侠闲置/自动锁定/睡眠?
但循环播放音频文件似乎不再使MobileSafari保持活动状态并阻止手机锁定.在强制页面每隔30秒刷新一次的同时,我需要原始页面保持打开状态.
谷歌的最新互动音乐视频Just A Reflektor似乎阻止了移动锁定,他们的JS在这里引用了preventSleepIos功能.
我可以做些什么来阻止iOS入睡?
谢谢!
Iou*_*eev 17
如果你通过http://jsbeautifier.org/运行缩小的脚本,你就会知道这个hack是如何工作的.
黑客的想法如下:如果在safari中请求新页面,ios设备将重置睡眠超时.
知道了,我们可以设置一个间隔,每隔30秒左右请求一个新页面:
iosSleepPreventInterval = setInterval(function () {
window.location.href = "/new/page";
}, 30000);
Run Code Online (Sandbox Code Playgroud)
现在我们需要停止请求,以便不重定向页面:
iosSleepPreventInterval = setInterval(function () {
window.location.href = "/new/page";
window.setTimeout(function () {
window.stop()
}, 0);
}, 30000);
Run Code Online (Sandbox Code Playgroud)
现在每隔30秒会有一个页面请求,因此ios设备不会进入休眠状态,请求将被取消,因此您不会离开页面.
注意:我将此代码用于"/ new/page":
sleep(10);exit;
Run Code Online (Sandbox Code Playgroud)
此hack已在iOS 6和iOS 7上经过测试.您可以在jsBin上自行测试.
注2:Android使用不同的hack来防止设备休眠.