2

我在 Android 和 iOS 上都有一个聊天应用程序。在 Android 上,我使用的是 Autobahn。在 iOS 上,我使用的是 SocketRocket。在服务器端,我使用 Autobahn for Python。

有时我的消息将无法在 Android 上发送,因为连接丢失。我在iOS上没有看到这个问题。我认为这不是服务器问题,因为它在 iOS 上一直运行良好(据我所知)。我还没有重新启动服务器或任何东西。有时这些消息可以在 Android 上运行。

这是我尝试发送消息的日志消息:

01-18 23:49:51.307 1875-1875/com.greenrobot.yesorno D/de.tavendo.autobahn.WebSocketConnection: opening handshake received

01-18 23:49:51.379 1875-1875/com.greenrobot.yesorno D/MoPub: Refresh disabled for ad unit (8fb0facec32111e295fa123138070049).

01-18 23:49:51.383 1875-1918/com.greenrobot.yesorno D/OpenGLRenderer: endAllStagingAnimators on 0xdd232b80 (ListView) with handle 0xe12c0f00

01-18 23:49:58.960 1875-2726/com.greenrobot.yesorno D/de.tavendo.autobahn.WebSocketReader: run() : ConnectionLost

01-18 23:49:58.961 1875-2726/com.greenrobot.yesorno D/de.tavendo.autobahn.WebSocketReader: ended

01-18 23:49:58.961 1875-1875/com.greenrobot.yesorno D/de.tavendo.autobahn.WebSocketConnection: fail connection [code = 3, reason = WebSockets connection lost

01-18 23:49:58.961 1875-1875/com.greenrobot.yesorno D/de.tavendo.autobahn.WebSocketReader: quit

01-18 23:49:58.961 1875-2727/com.greenrobot.yesorno D/de.tavendo.autobahn.WebSocketWriter: ended

01-18 23:49:58.962 1875-1875/com.greenrobot.yesorno D/de.tavendo.autobahn.WebSocketConnection: worker threads stopped

有谁知道如何解决这个连接丢失问题,或者你知道另一个适用于 Android 的 websocket 库吗?

4

1 回答 1

0

Autobahn 不是 Android 的良好支持的 websocket 实现。对我来说,与 Autobahn 的交易破坏者是SSL/TLS (wss) support,它似乎仍然不受支持。

这个问题涵盖了现有的 Android 的 websocket 实现。答案详细说明了这些实现的一些已知问题。根据您的特定项目要求,您可以消除几个选项。

于 2016-01-19T05:33:01.270 回答