ios – Websockets可以在移动电话上工作吗?

前端之家收集整理的这篇文章主要介绍了ios – Websockets可以在移动电话上工作吗?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我目前正在考虑创建一个软实时手机webapp,但是当我开始研究websockets时,我发现了大量关于websocket连接的恐慌故事在手机上丢失了:

WebSockets over a 3G connection

http://blog.hekkers.net/2012/12/09/websockets-and-mobile-network-operators/

这仍然可以被视为一个问题吗?

相关地,我怀疑长轮询客户端可能是实现类似功能的好方法,但我想知道我可能遇到的移动特定问题.

到目前为止,我已经读过长时间的轮询请求可能会对电池寿命产生相当大的影响.我还听说iOS以某种方式限制了对单个服务器的连接数量,这可能是个问题.

有没有人在使用实时组件的移动应用程序上工作?如果你有,你遇到了什么挑战,你是如何克服它们的?

解决方法

我使用实时数据构建了几个websocket webapp,它们在iphone和移动设备上表现非常出色. Websockets保持ping / pong连接以查看连接是否仍然存在.导致断线的事情:

>如果您关闭应用程序,将删除连接(在iOS网络应用程序上).
>如果网络确实关闭(wifi / 3g / 4g),您将被丢弃并且无法恢复在该丢弃时间内发送的任何内容.

注意事项:

>在javascript的onclose部分写一个简单的重新连接例程,尝试在一定的秒数后重新连接.

function connect(){
    websocket = new WebSocket("wss://myws:5020");
    websocket.onclose=function(event){
        console.log(event);
        setTimeout(connect,5000); //re-connect after 5 seconds
        //..and so on
}

猜你在找的iOS相关文章