app 使用 websocket 熄屏后断开

客户要求:app前端通过websocket连接获取传过来的信息,接收到对应的消息后,则给用户推送对应的消息。
推送使用的是极光推送,但是手机熄屏时间稍微长一些,websocket链接就断开了,导致app接收不到消息,没办法实现即时性的效果,网上查了很多资料,都没办法实现,客户还是比较想要这个实现这个需求的,大家有没有好的方法能实现的啊?

如果是安卓,试试设置允许后台活动:设置 / 应用 / 应用启动管理,找到你的应用,关闭自动管理,弹出手动管理框,选择允许后台活动。

  • 你可以看下这个问题的回答https://ask.csdn.net/questions/7783219
  • 除此之外, 这篇博客: WebSocket 的使用,和客户端断电,服务器检测断开连接中的 如果客户端异常断电,导致连接一直在怎么办,就需要服务器检测客户端是否还在,然后断开连接,其实很简单,服务器写个心跳检测,然后调用 部分也许能够解决你的问题, 你可以仔细阅读以下内容或跳转源博客中阅读:
  •     ByteBuffer b = ByteBuffer.wrap("close".getBytes());
                    System.out.println("服务器发送离线命令给" + this.user);
                   wsOutbound.close(1, b);