IM软件客户端,使用状态机来保持在线状态

例如QQ,飞信等IM软件保持跟Server的链接,同时标识出客户端的状态。是登录中、已经登录,还是注销等。

下面的状态机可以满足IM软件维持登录状态。

IM软件客户端,使用状态机来保持在线状态_第1张图片


各个状态步骤说明:

1. 启动登录(跟logout相似)
2. 登录中。触发条件:手动登录,网络可用通知
3. 登录成功
4. 登录失败。原因有多种可能是网络
5.  密码被改了,本地登录还是使用旧的密码,直接注销
6. 因为网络问题掉线了
7. 手动或被动注销,被踢。


以上均个人开发过程中总结出来的,如有错误请斧正!

你可能感兴趣的:(状态机)