Android WebSocket Service 实现。如果你困扰怎么在 Android 上使用 WebSocket,此项目是很好的研究对象。Demo 可用作 WebSocket 测试工具。

项目创建 3 年后回看代码,功能没问题,但一些设计思想和实现相当愚蠢,仅供实现参考!

基于 okhttp 4.2.2,这是一个 LocalService,不支持运行在独立进程中。

功能

  • 字符串数据内容即时收发
  • 二进制数据内容即时收发
  • 轻松的获取连接状态
  • 可选的后台持续运行功能
  • 自动重连
  • 自定义协议升级握手 header
  • 自定义心跳时间

数据传递

Service 与其它安卓组件进行数据交换不是一件很方便的事情。此项目使用 StaticViewModelStore 来实现在同一进程的 App 内,任意 Activity / Fragment / Service 及其它 LifecycleOwner 中进行数据的收发和控制这个 Service。

演示

Bilibili 视频演示