AG雨冰 2021-12-17 15:05 采纳率: 100%
浏览 60
已结题

serversocket+安卓socket连接后只能发送一次消息,第二次发送没反应,需要重新连接socket,求解

服务端使用serversocket,安卓端使用socket连接,可以连接上服务端,但是只能发送一次消息,之后服务端怎么也接收不到消息了,debug发现只有第一次dis.readUTF()阻塞等待客户端,如果使用dis.readLine()方法就第一次打印消息,后面不会阻塞,一直打印null。
服务端代码

img


安卓客户端代码

img

  • 写回答

1条回答 默认 最新

  • JioWu 2021-12-17 15:12
    关注

    与服务端的连接需要通过心跳来保持,socket连接中断经常会发生 所以需要发送心跳 后端收到心跳后给前端回复,证明连接正常。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 12月25日
  • 已采纳回答 12月17日
  • 创建了问题 12月17日