Flutter IMKit 架构
Flutter IMKit 基于 Provider 状态管理模式设计,分为以下核心服务和组件:
核心服务与组件
RCKEngineProvider
: 连接服务。负责管理与IM服务器的连接状态,监听连接状态变化,方便UI做连接状态的展示。实际的IM连接由 IMLib 底层负责处理。
RCKChatProvider
: 消息服务。负责管理聊天消息的发送、接收、历史消息加载等功能,同时处理与UI交互的各种事件监听,如消息发送状态、读取状态等。
RCKConvoProvider
: 会话服务。负责管理会话列表,包括会话的获取、更新、置顶、删除等功能,同时处理会话未读数的管理。
RCKMessageInputProvider
: 输入服务。负责管理消息输入框的状态,处理文本输入、表情输入、多媒体选择等功能。
RCKThemeProvider
: 主题服务。负责管理UI主题配置,包括颜色、字体、间距等 UI 样式的统一配置和管理。
RCKVoiceRecordProvider
: 语音录制服务。负责处理语音消息的录制、播放、状态管理等功能。
主要UI组件
Flutter IMKit提供了一套完整的UI组件,可以快速构建即时通讯应用界面: