如何在关闭wifi然后再次启用时重新连接socket.io iOS客户端?

时间:2012-11-27 12:28:56

标签: ios websocket socket.io

我正在编写一个iOS应用程序,它使用socket.io向服务器发送消息并从clent接收消息,一切正常。但我有一个问题:当我进入我的应用程序并连接并发送消息时,一切正常,然后按Home键进入系统设置应用程序,选择飞行模式关闭wifi,然后关闭飞行模式并连接wifi ,我回到我的应用程序,但套接字无法重新连接。如果我作为下载图片执行其他互联网请求,则始终显示进度对话框。

我不知道自己的错误,我疯了。

我使用https://github.com/pkyeck/socket.IO-objc

1 个答案:

答案 0 :(得分:1)

您是否检测到wifi打开/关闭的时间?你应该。看看这里:Apple Reachability sample

当您收到断开连接通知时,您可以断开套接字。当wifi回来时再次连接。当应用程序进入后台时,您也应该断开连接。

我不希望套接字神奇地重新连接。实现所有socket-io委托以了解何时断开连接或出现错误。在这些情况下,更改您的socket-io对象,断开连接等。无论什么都有意义。您可能需要一个标志来了解当前的套接字状态(连接,断开连接等)。 重新连接wifi后重新启动应用程序时,您应该知道该怎么做,具体取决于您的状态标志和实际的socket-io对象。

相关问题