I noticed that there is a behavior change in the NanoWSD server while upgrading the Android target SDK from 25 to 26.
I received a java.net.SocketException: Socket closed even when I sent a message to the server every 30s ({"request":"hb","nonce":1576514028626}) and I sent a broadcast message to all my clients every 5s ("test").
I ran my application in device with Android 8.1.0.
Thanks in advanced for your help.
PS: I would like to post my Java code but there is some error in rendering.
Log messages:
2019-12-16 17:33:18.616 15305-15349/com.test.test I/Server: WS opened
2019-12-16 17:33:19.026 15305-15305/com.test.test E/Server: WebsocketServer.broadcastMessage: "test"
2019-12-16 17:33:24.043 15305-15305/com.test.test E/Server: WebsocketServer.broadcastMessage: "test"
2019-12-16 17:33:29.105 15305-15305/com.test.test E/Server: WebsocketServer.broadcastMessage: "test"
2019-12-16 17:33:34.167 15305-15305/com.test.test E/Server: WebsocketServer.broadcastMessage: "test"
2019-12-16 17:33:39.231 15305-15305/com.test.test E/Server: WebsocketServer.broadcastMessage: "test"
2019-12-16 17:33:44.293 15305-15305/com.test.test E/Server: WebsocketServer.broadcastMessage: "test"
2019-12-16 17:33:48.629 15305-15349/com.test.test D/Server: onMessage: WS[Text, fin, masked, [38b] {"request":"hb","nonce":1576514028626}]
2019-12-16 17:33:49.352 15305-15305/com.test.test E/Server: WebsocketServer.broadcastMessage: "test"
2019-12-16 17:33:54.411 15305-15305/com.test.test E/Server: WebsocketServer.broadcastMessage: "test"
2019-12-16 17:33:59.474 15305-15305/com.test.test E/Server: WebsocketServer.broadcastMessage: "test"
2019-12-16 17:34:04.533 15305-15305/com.test.test E/Server: WebsocketServer.broadcastMessage: "test"
2019-12-16 17:34:09.590 15305-15305/com.test.test E/Server: WebsocketServer.broadcastMessage: "test"
2019-12-16 17:34:14.648 15305-15305/com.test.test E/Server: WebsocketServer.broadcastMessage: "test"
2019-12-16 17:34:17.841 15305-15349/com.test.test E/Server: onException
java.net.SocketException: Socket closed
at java.net.SocketInputStream.read(SocketInputStream.java:203)
at java.net.SocketInputStream.read(SocketInputStream.java:139)
at java.io.BufferedInputStream.fill(BufferedInputStream.java:248)
at java.io.BufferedInputStream.read(BufferedInputStream.java:267)
at fi.iki.elonen.NanoWSD$WebSocketFrame.read(NanoWSD.java:435)
at fi.iki.elonen.NanoWSD$WebSocket.readWebsocket(NanoWSD.java:248)
at fi.iki.elonen.NanoWSD$WebSocket.access$200(NanoWSD.java:65)
at fi.iki.elonen.NanoWSD$WebSocket$1.send(NanoWSD.java:88)
at fi.iki.elonen.NanoHTTPD$HTTPSession.execute(NanoHTTPD.java:957)
at fi.iki.elonen.NanoHTTPD$ClientHandler.run(NanoHTTPD.java:192)
at java.lang.Thread.run(Thread.java:764)
2019-12-16 17:34:17.845 15305-15349/com.test.test I/Server: WS closedInternalServerErrorHandler terminated without closing the connection.
Hi,
I noticed that there is a behavior change in the NanoWSD server while upgrading the Android target SDK from 25 to 26. I received a java.net.SocketException: Socket closed even when I sent a message to the server every 30s ({"request":"hb","nonce":1576514028626}) and I sent a broadcast message to all my clients every 5s ("test"). I ran my application in device with Android 8.1.0.
Thanks in advanced for your help.
PS: I would like to post my Java code but there is some error in rendering.
Log messages: