XuqmGroup-AndroidSDK/sdk-im/README.md
XuqmGroup 4a18d06c63 docs: 添加 CLAUDE.md + 各 module README + sdk-webview JSBridge 补全
Agent 7 + Agent 8:
- CLAUDE.md 项目上下文
- 各 module README (core/im/push/update/webview/log)
- XWebViewStandardHandlers.kt 补全标准 JSBridge handler
2026-06-16 12:14:54 +08:00

57 行
1.5 KiB
Markdown

# sdk-im
XuqmGroup Android SDK IM 模块。提供 WebSocket 实时通信、消息收发、群组管理。
## 依赖
```kotlin
implementation("com.xuqm:sdk-im:VERSION")
implementation("com.xuqm:sdk-core:VERSION") // 必须
```
## 使用
**无需手动初始化。** `XuqmSDK.login(userId, userSig)` 成功后自动完成 IM 登录。
```kotlin
// ImClient 直接使用
val imClient = ImClient()
imClient.listener = object : ImEventListener {
override fun onConnected() { }
override fun onMessage(msg: ImMessage) { }
override fun onRevoke(msgId: String, operatorId: String) { }
}
imClient.connect()
imClient.send(SendMessageParams(
toId = "user_002",
chatType = ChatType.SINGLE,
msgType = MsgType.TEXT,
content = "Hello!"
))
```
## API
### ImClient
| API | 说明 |
|-----|------|
| `imClient.connect()` | 连接 WebSocket |
| `imClient.disconnect()` | 断开连接 |
| `imClient.send(params)` | 发送消息 |
| `imClient.revoke(msgId)` | 撤回消息 |
| `imClient.listener` | 事件监听器 |
### 消息类型
`TEXT` / `IMAGE` / `VIDEO` / `AUDIO` / `FILE` / `CUSTOM` / `LOCATION` / `NOTIFY` / `RICH_TEXT` / `CALL_AUDIO` / `CALL_VIDEO` / `FORWARD` / `QUOTE` / `MERGE`
### 自动重连
断线后指数退避重连,初始间隔 3 秒,最大间隔 30 秒。调用 `disconnect()` 后停止。
### 群聊
支持 `@userId` 提及,写入 `mentionedUserIds`。群组管理 API 包含:创建、解散、禁言、设置管理员、转让群主。