web-web载体后台运行判断

之前有一个需求是屏幕锁屏把网络切断了,长链接断开了,要在用户手机亮屏的时候,重新连接

我第一想法就是用online和offline监听网络,然而试了下,发现不适用,它只判断是否开启数据或者WiFi,但不管你是否真的有数据。

然后阿焦同志告诉我用visibilitychange,这真的是一个不错的东西。代码:

function handleVisibilityChange() {
  if (document.hidden) {
    // 用户按home,或者锁屏
  }
}

document.addEventListener("visibilitychange", handleVisibilityChange, false)

不过这个东西再去分析锁屏还是需要一些处理。不过这个方案是可行的。

不过最后解决的方案是用长链接断开链接的时候,重新处理。(这样竟然可以了,是不是很不可思议)

其实,理论上,在断开的时候执行,再打开的时候早执行完了,这时候还是失去链接状态。

然而恰好,在失去网络的同时,对javascript代码也进行了休眠状态,等解锁的时候又恢复了,这时候,,,,嗯,刚刚好。

不过手机的多样性,和rom的开发者心情不同,这也未必通用,那就随机应变啦。

---END---

你可能感兴趣的:(web-web载体后台运行判断)