android局域网通讯框架

该框架是用来实现局域网中多台机器通讯的,基于TCP协议实现了多台C连接一台S,https://github.com/MurrayDu/lan

该框架支持消息失败重复,消息发送成功或失败的返回,支持心跳包,支持服务端断网重连,话不多说直接上图

上图是整个框架的结构图

TcpService是服务端通讯的类,负责监听客户端连接请求,维护客户端列表

Finder是服务端,客户端端搜索的基类

SubordinateFinder是服务端用来发现客户端的finder,它运行一个MulticastSocket,被动的等待客户端的发现请求,当有接收到客户端消息后将自己的IP发送给客户端。

SubTcpClient, 调用startScan启动一个局域网搜索,搜索局域网里面的所有的服务端,搜索到之后将信息返回给用户。

 connect方法是直接去连接对应的服务端。

device里面的MsgImpl直接负责消息的发送和接收,RealTcpSender负责socket的收发,MsgImpl是消息处理的类,消息格式,包头,解决粘包的问题,发送确认,心跳包等业务层的处理

猜你喜欢

转载自blog.csdn.net/dxh040431104/article/details/92789934
今日推荐