com.netease.nim.uikit
├── api #UIKit 数据接口、定制化接口
├── business #业务相关,P2P,Team,ChatRoom
├── common #通用 ui 组件、utils
├── impl #数据接口、定制化接口的默认实现
└── support #第三方库封装
以层次划分的形式,看一下各个模块之间如何交互,各自的角色和定位
-
api 模块定义了
UIkit
的功能扩展接口、业务数据接口,提供了UIkit
能力输出类 NimUIKit。APP 与UIkit
交互只需要关注这个模块的接口。 -
impl 是
UIkit
一些抽象接口的默认实现,如会话定制接口、用户信息接口,当 APP 不设置任何定制化时,也能保证UIKit
组件正常运转。 -
business 模块实现了 IM 相关的功能,例如联系人、单聊、群聊、聊天室等,能力以
Activity
或者Fragment
形式展现。开发者可以通过NimUIKit
提供的接口来启动Activity
,以 xml 或者 java 代码的方式集成Fragment
。 -
common 模块是一些通用 ui 组件、工具类等等,与业务无关。
-
support 是基于第三方库对业务的封装等等。