SDK 总览
imcore 提供覆盖同一套 WebSocket 协议的官方类型化客户端 SDK,并为 React Native、微信小程序与 Electron 提供平台适配入口,让你无需手写底层协议即可接入。
| 平台 | 包 | 安装 | 文档 |
|---|---|---|---|
| JavaScript / TypeScript | @imcore/sdk |
npm i <下载的 .tgz>(也支持直接装 URL) |
JS/TS |
| React Native | @imcore/sdk/react-native |
同一 JS/TS 包 + AsyncStorage/NetInfo | React Native |
| 微信小程序 | @imcore/sdk/wechat-miniprogram |
同一 JS/TS 包 + 微信开发者工具构建 npm | 微信小程序 |
| PC / Electron | @imcore/sdk/electron/* |
与 JS/TS 使用同一安装包 | Electron |
| Dart / Flutter | imcore_sdk |
解压后 pubspec path 依赖 | Dart |
| Swift / iOS | ImcoreSDK |
解压后 SPM 本地 package 引用 | Swift |
| Kotlin / Android | imcore-sdk |
解压后 gradle 源码工程引入 | Kotlin |
React Native 与微信小程序适配已随客户端 SDK 1.13.0 开放下载,两个入口均包含在下载页提供的同一份版本化 JS/TS 安装包中。
SDK 以版本化下载包分发(暂未上架 npm / pub.dev / SPM / Maven 公共仓库),与免费基础版服务端一起从下载页获取。
如何选型
- Web / Node:用 JS/TS SDK(浏览器使用原生 WebSocket,Node 传入
ws)。 - React Native:移动端入口增加 AsyncStorage 持久化与 AppState/NetInfo 重连管理,直接使用 React Native 全局 WebSocket。
- 微信小程序:小程序入口适配
wx.connectSocket、异步存储、前后台与网络重连,以及wx.uploadFile。 - PC / Electron:用 Electron 适配层,连接和凭据留在主进程,通过受限 preload transport 向 renderer 暴露 typed facade。
- Flutter / Dart:用 Dart SDK(iOS、Android、桌面、Web 通用)。
- 原生 iOS / macOS:用 Swift SDK(基于
URLSessionWebSocketTask,零依赖)。 - Android / JVM:用 Kotlin SDK(协程 + Flow,默认 OkHttp)。
各 SDK API 形态一致:connect() 登录确认门控、im.dm/group/room 类型化收发与历史、以及面向未封装命令的 request()/send() 逃生通道。
成熟度
当前 SDK 已覆盖传输内核、seq 关联请求/响应、类型化的 DM/群/聊天室/社区能力,以及消息缓存、离线队列、媒体上传和推送注册等常用集成能力;不同运行时的具体边界见各平台页。集成测试经环境变量开关启用,接入生产前仍应对自己的部署做端到端验证。E2EE 不在当前能力范围内。
未被 SDK 覆盖的平台,或需要直接操作协议时,参见客户端接入指南(原始 WebSocket 协议)。