安卓/铬的后台模式下网络使用率非常高



我有一个Ionic应用程序,它的数据量很大(它是一个家庭摄像头监控应用程序)。由于它与之交互的后端系统的性质,它打开了许多与服务器的img src HTTP连接。服务器基本上通过 JPEG 从相机(我知道效率低下)通过 img src (HTTP) 连接连续流式传输图像。

我看到的奇怪事情是,如果应用程序进入后台,chrome会继续保持img src连接打开。这会导致后台出现巨大的网络带宽。

我尝试检测何时切换到后台 - 并将 img src 标签替换为本地图像。 我的逻辑是它将终止TCP连接。

但这无济于事。

我被难倒的原因如下:

  1. 为什么即使我将图像更改为本地文件,连接仍保持打开状态

  2. 我到底如何阻止我的应用程序在后台接收数据

好的,我想我想出了问题所在。要强制停止 Chrome 终止所有连接,调用window.stop()对我有用。

因此,每次我检测到切换到后台时,我都会调用 window.stop(),它有效地终止了所有打开的连接,从而杀死了图像流。

信用:https://code.google.com/p/chromium/issues/detail?id=73395

最新更新