我有一个Ionic应用程序,它的数据量很大(它是一个家庭摄像头监控应用程序)。由于它与之交互的后端系统的性质,它打开了许多与服务器的img src
HTTP连接。服务器基本上通过 JPEG 从相机(我知道效率低下)通过 img src (HTTP) 连接连续流式传输图像。
我看到的奇怪事情是,如果应用程序进入后台,chrome会继续保持img src连接打开。这会导致后台出现巨大的网络带宽。
我尝试检测何时切换到后台 - 并将 img src 标签替换为本地图像。 我的逻辑是它将终止TCP连接。
但这无济于事。
我被难倒的原因如下:
-
为什么即使我将图像更改为本地文件,连接仍保持打开状态
-
我到底如何阻止我的应用程序在后台接收数据
好的,我想我想出了问题所在。要强制停止 Chrome 终止所有连接,调用window.stop()
对我有用。
因此,每次我检测到切换到后台时,我都会调用 window.stop(),它有效地终止了所有打开的连接,从而杀死了图像流。
信用:https://code.google.com/p/chromium/issues/detail?id=73395