架构解析.md 1.3 KB

NIMKit 架构解析

总体结构

com.netease.nim.uikit
├── api                 #UIKit 数据接口、定制化接口
├── business            #业务相关,P2P,Team,ChatRoom
├── common              #通用 ui 组件、utils
├── impl                #数据接口、定制化接口的默认实现
└── support             #第三方库封装

以层次划分的形式,看一下各个模块之间如何交互,各自的角色和定位

image

  • api 模块定义了 UIkit 的功能扩展接口、业务数据接口,提供了 UIkit 能力输出类 NimUIKit。APP 与 UIkit 交互只需要关注这个模块的接口。

  • impl 是 UIkit 一些抽象接口的默认实现,如会话定制接口、用户信息接口,当 APP 不设置任何定制化时,也能保证 UIKit 组件正常运转。

  • business 模块实现了 IM 相关的功能,例如联系人、单聊、群聊、聊天室等,能力以 Activity 或者 Fragment 形式展现。开发者可以通过 NimUIKit 提供的接口来启动 Activity,以 xml 或者 java 代码的方式集成 Fragment

  • common 模块是一些通用 ui 组件、工具类等等,与业务无关。

  • support 是基于第三方库对业务的封装等等。