大家好,我必须创建一个应用程序,它需要尽可能多地与 websocket 服务器保持连接以监听事件。由于它是一款安全应用程序,因此无需担心电池和 radio 使用等资源。
我正在使用符合 Draft_17 规范的标准 org.java_websocket。该应用程序能够使用 websockets 进行通信。问题是当手机失去与服务器的连接时。在使用代码 1006 调用 onClose() 回调之前,websocket 需要几分钟才能意识到它已断开连接。我需要尽可能地减少这段时间。在 Android 上使用 HTTP 客户端时,这不是问题,我们只需设置套接字超时即可。但是使用 org.java_websocket 我无法弄清楚如何设置此超时。
我不断地从服务器发送/接收数据。发送不会以任何方式加速套接字超时。
WebSocket 构造函数上有一个连接超时参数。
return new WebSocketClient(hostURI, new Draft_17(), null, 5000)
但它没有任何效果,因为我认为这只是在最初尝试连接到服务器时。
任何帮助或指导将不胜感激
最佳答案
如果查看WebSocketClient源码,会提示timeout参数未被使用
关于java - Android Websocket 客户端超时时间过长,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36457879/