【问题标题】:Tricks to keep phone from sleeping in mobile web browser using JavaScript/HTML? [closed]使用 JavaScript/HTML 防止手机在移动网络浏览器中休眠的技巧? [关闭]
【发布时间】:2011-12-16 01:28:36
【问题描述】:

我知道对于 Android 和 iPhone 上的原生移动应用程序,有一些简单的方法可以让手机不进入睡眠状态,但我正在构建一个在移动网络浏览器中运行的移动网络应用程序,并希望探索这种可能性。

出于安全原因,我觉得这是不可能的,但我想也许有人想出了一个 JavaScript 技巧或适用于移动浏览器(如移动 Safari、Firefox 或 Opera)的东西?

【问题讨论】:

  • 我不确定这是否可能。我怀疑不是。但是我建议,如果您的应用程序依赖于手机不休眠,那么您做错了;你会让那些因为你没电而生气的用户感到不安。
  • @JohnWatson 我们的应用不依赖手机不休眠;但是,对于我们应用程序的特定部分,我们希望手机保持唤醒状态。
  • 为什么这个f**k被关闭了?这是一个非常明智的问题,答案是否可能,而且非常清楚。

标签: javascript android html ios mobile


【解决方案1】:

我对 setInterval 的经验是,如果在很长一段时间内使用它会导致内存泄漏并增加内存使用量。在这里使用 setTimeout 可能很有用,可以保持每分钟运行一个小函数。这应该让手机保持活力而不会耗尽多余的内存。

在打开您想要保持打开的应用部分时,

var id,
    timeout = 600;

id = setTimeout(stayOpen, timeout);

var stayOpen = function () {
  if (stillOnPage) {
    id = setTimeout(stayOpen, timeout);
  }
});

当用户离开页面时,你应该清除超时

clearTimeout(id);

编辑:如果这不起作用,那么您可以在 stayOpen 函数中执行一些操作,该操作会触发一些让手机保持清醒的东西。接受建议。

【讨论】:

  • 这真的能让手机保持清醒吗?我有点怀疑...
  • 我知道这行不通,因为我们的应用程序当前总是设置超时...屏幕仍然关闭...我在想也许有一些方法可以模拟触摸事件?那可能有用吗?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-10-30
  • 2010-10-07
  • 2011-08-31
相关资源
最近更新 更多