服务端使用serversocket,安卓端使用socket连接,可以连接上服务端,但是只能发送一次消息,之后服务端怎么也接收不到消息了,debug发现只有第一次dis.readUTF()阻塞等待客户端,如果使用dis.readLine()方法就第一次打印消息,后面不会阻塞,一直打印null。
服务端代码
安卓客户端代码
服务端使用serversocket,安卓端使用socket连接,可以连接上服务端,但是只能发送一次消息,之后服务端怎么也接收不到消息了,debug发现只有第一次dis.readUTF()阻塞等待客户端,如果使用dis.readLine()方法就第一次打印消息,后面不会阻塞,一直打印null。
服务端代码
与服务端的连接需要通过心跳来保持,socket连接中断经常会发生 所以需要发送心跳 后端收到心跳后给前端回复,证明连接正常。