gpt4 book ai didi

javascript - Chrome/Android杀死了后台运行的websocket

转载 作者:行者123 更新时间:2023-11-29 02:21:08 25 4
gpt4 key购买 nike

Android(也包括iPhone)中的Google Chrome在一段时间(在20seg-3分钟之间)之间振荡(取决于设备)后,将终止websocket连接。
当应用程序不在前台时,它也无法处理简单的计时器或间隔,例如我在底部附加的示例。

我不明白这是正常的,以更新电池寿命并保留移动设备的资源,但这很糟糕……对于任何Web开发人员来说,当用户需要一直连接到套接字而不丢失连接时,这确实是一个痛苦。只需打开whatsapp来回答消息或其他浏览器选项卡上的某些内容,然后返回到webapp并断开连接即可。例如,一个聊天室。

有解决此问题的方法吗?可以直接从chrome配置的内容,对Webapp的特殊权限,针对这种情况的某种绕过方法?
这是一个webapp,已添加到android的开始屏幕中...即使如此,chrome似乎也没有赋予它任何特定的优先级,并且会不断杀死websocket并在webapp处于后台时拒绝执行JavaScript。 (屏幕关闭或前景中的其他应用)

我希望我已经解释清楚了,我是stackoverflow的新手,而且我的英语不太好。
提前致谢!

例如,您可以在移动浏览器中执行一个简单的页面,并看到该间隔未执行,就像预期的10个秒数一样。

<script>
setInterval(function() {
var timeNow = new Date().toLocaleTimeString()
document.body.innerHTML += "<div> " + timeNow + "</div>"
}, 10000)
</script>

最佳答案

老实说,我对websocket不太了解,但是我遇到的一个常见问题是,有时当一两个以上的人尝试连接到同一套接字时,它会吓跑。这可能是您的问题吗?对不起,如果我帮不上什么忙。我制作了一些托管流的python程序,并在同时连接两个后将其关闭。也许像聊天应用程序一样托管多个websocket?

关于javascript - Chrome/Android杀死了后台运行的websocket,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55582103/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com