简介
更新时间: 2024/10/17 10:32:55
网易云信圈组是网易云信 IM 即时通讯服务的全新能力,与单聊、群聊、聊天室一起构成网易云信 IM 即时通讯服务的四大能力模块。 网易云信圈组 UIKit(QChat UIKit)是基于 NetEase Instant Messaging SDK(以下简称 NIM SDK)中的圈组模块开发的一款大容量即时通讯 UI 组件库,包括社区广场、社区-话题二级结构、身份组逻辑以及公告频道等模块。通过圈组 UIKit,您可以快速集成包含 UI 界面的超大型社区或宣发类大群场景。
圈组 UIKit 简化了基于 NIM SDK 的应用开发过程。它不仅能助您快速实现 UI 功能,也支持调用 NIM SDK 相应的接口实现即时通讯业务逻辑和数据处理。因此,您在使用圈组 UIKit 时仅需关注自身业务或个性化扩展。
场景概览
类 Discord 超大型社区
圈组 UIKit 支持单聊、群聊、聊天室之外的第四大产品模块 —— 类 Discord 的超大型社区场景。该社区场景提供了一个互动和社交的平台,用户能够通过该平台找到与自己兴趣相符的社区群体。具体支持功能请参见 功能概览。
类 telegram channel 超大型消息通知群
圈组 UIKit 支持全新独立的消息场景模块,可用于创造向广大受众传播公共信息的工具,将消息资讯直接传递给频道的订阅者。其模式更像是伪社交媒体,通过更广泛、单方面的广播方式传送资讯给客户成员,让成员了解最新信息。多用于品牌、新闻、公众人物的信息推送。具体支持功能请参见 功能概览。
架构介绍
产品架构
上图中:
- UIKit 层的
QChatKit-ui
,对应上述工作原理图中的 Activity/Fragment/View。 - UIKit 层的
QChatKit
,对应上述工作原理图中的 Repository。 - CoreKit 层对应上述工作原理图中的 Provider。
工作原理
圈组 UIKit 采用 (Model–View–ViewModel)MVVM 架构模型,实现 UI 展示与业务逻辑开发的相互独立。
工作流程如下:
- QChat UIKit 展示层的 Activity/Fragment/View 向响应层的 ViewModel 发送请求。
- ViewModel 将请求经由业务逻辑层转发至 NIM SDK(网易云信 IM SDK)。
- NIM SDK、QChat SDK 接收请求后触发回调,回调数据经由业务逻辑层和响应层发送至 Activity/Fragment/View。
- Activity/Fragment/View 将回调数据发送至 RecyclerViewAdapter。后者根据界面需要展示的不同实体的 type,判定具体的 UI 样式。例如,SDK 返回的回调数据为消息数据时,RecyclerViewAdapter 可判定消息数据中包含的消息类型(即 type),将消息在 UI 上展示为对应类型的样式。
相关文档
-
功能清单请参见 功能概览。
-
快速体验请参考 Demo 体验 和 快速跑通圈组 UIKit 源码。
-
集成流程请参考 集成圈组 UIKit。