SDK 体系
NI PaaS SDK 由三层组成:IMLib(通信核心)、IMKit(UI 组件)与服务端 SDK(REST 封装)。所有层共享同一份 IDL,方法名与语义零漂移。
分层
| 层 | 面向对象 | 职责 | 文档 |
|---|---|---|---|
| IMLib | 客户端研发 | 连接、消息、会话、群组、聊天室、好友、上传 | IMLib |
| IMKit | 客户端研发 | 会话列表、会话页面、输入区、消息气泡等 UI | IMKit |
| Server SDK / REST | 服务端研发 | 用户、群组、消息、聊天室、超级群、回调等管理接口 | 服务端 SDK |
平台支持
| 平台 | 语言 / 运行时 | IMLib | IMKit | 文档 |
|---|---|---|---|---|
| Android | Kotlin(JVM / Android) | ✅ 已交付 | ✅ 已交付 | IMLib / IMKit |
| Web | JavaScript(ESM)+ TypeScript | ✅ 已交付 | ✅ 已交付 | IMLib / IMKit |
| Electron | Electron 主进程 + preload 桥 | ✅ 已交付 | ✅ 已交付 | IMLib / IMKit |
| macOS | ArkTS(契约预留) | ✅ 已交付 | ✅ 已交付 | IMLib / IMKit |
| Flutter | Dart(Flutter) | ✅ 已交付 | ✅ 已交付 | IMLib / IMKit |
| Native (C ABI) | C ABI(Rust core) | ✅ 已交付 | ✅ 已交付 | IMLib / IMKit |
| iOS | Swift(契约预留) | ✅ 已交付 | ✅ 已交付 | IMLib / IMKit |
| HarmonyOS | ArkTS(契约预留) | ⏳ 契约预留 | ⏳ 契约预留 | IMLib / IMKit |
版本与兼容
- 当前 IDL 版本 v1.0.0(frozen,冻结于 2026-10-30T01:15:00.000Z);
- 同一 IDL 生成的各端绑定保证方法名与语义一致;平台差异只在调用风格(Promise / Future / 回调 / C ABI);
- 新增字段保持向后兼容;破坏性变更必须升级主版本并在「更新日志」中说明。
选择建议
| 场景 | 建议 |
|---|---|
| 已有成熟 UI 体系 | IMLib + 自研 UI |
| 需要快速上线标准聊天 | IMKit + 少量定制 |
| 桌面端需要本地数据库 | Electron IMLib(主进程 SQLite) |
| 嵌入式 / 跨语言 | Native IMLib(C ABI) |
| 服务端管理动作 | REST Open API 或签名封装 |