Skip to content
cwwise edited this page Sep 29, 2017 · 3 revisions

聊天记录

数据存储

聊天消息主要分为消息会话类和消息体ChatMessage两种。

聊天UI

消息发送

消息发送主要是ChatMessageTransmitter这个类来负责.

ChatMessageTransmitter管理所有发送消息的线程,每一个线程都是MessageTransmitterOperation的子类,子类重写func sendMessage()来发送消息。

发送消息:

  1. 将消息保存到数据库,显示消息
  2. 如果消息为图片,语音,视频 则先上传服务器,获取到服务器返回的链接URL(如果是 图片或者视频有上传的过程 有进度条)。
  3. 将链接URL放在在消息体内,发送给对方
  4. 成功之后 等待服务器的回调 更新 发送状态

聊天用户头像获取

参考环信的实例 获取用户信息

消息接收

使用到的模块

github上面的一些 LGWeChatKit TLChat