69 行
1.6 KiB
Markdown
69 行
1.6 KiB
Markdown
|
|
# Flutter 安装配置
|
|||
|
|
|
|||
|
|
**包名**:`xuqm_flutter_sdk` · **版本**:0.2.x · **语言**:Dart
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 安装
|
|||
|
|
|
|||
|
|
SDK 通过 Gitea Git 仓库发布,在 `pubspec.yaml` 中配置:
|
|||
|
|
|
|||
|
|
```yaml
|
|||
|
|
dependencies:
|
|||
|
|
xuqm_flutter_sdk:
|
|||
|
|
git:
|
|||
|
|
url: https://xuqinmin.com/xuqinmin12/XuqmGroup-FlutterSDK.git
|
|||
|
|
ref: v0.2.0
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
> Gitea Package Registry 暂不支持 Dart/Flutter 包格式,因此通过 Git Tag 方式发布。
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 模块说明
|
|||
|
|
|
|||
|
|
| 模块 | 包 | 功能 |
|
|||
|
|
|------|-----|------|
|
|||
|
|
| `xuqm_flutter_common` | `packages/common` | 初始化、网络、配置管理 |
|
|||
|
|
| `xuqm_flutter_im` | `packages/im` | 单聊、群聊、消息收发、会话、好友、群组 |
|
|||
|
|
| `xuqm_flutter_push` | `packages/push` | 设备 Token 注册、厂商检测(Android)/ APNs(iOS)|
|
|||
|
|
| `xuqm_flutter_update` | `packages/update` | App 版本检查、商店跳转、APK 下载(Android)|
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 初始化
|
|||
|
|
|
|||
|
|
```dart
|
|||
|
|
import 'package:xuqm_flutter_sdk/xuqm_flutter_sdk.dart';
|
|||
|
|
|
|||
|
|
await XuqmSDK.initialize(XuqmInitOptions(
|
|||
|
|
appKey: 'your_app_key',
|
|||
|
|
debug: true,
|
|||
|
|
));
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
初始化时会自动向服务端请求远程配置(IM API 地址等),若网络异常则回退到内置默认值。
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 多模块统一登录
|
|||
|
|
|
|||
|
|
无论集成了哪些模块(IM、Push、Update),**初始化和登录永远只做一次**:
|
|||
|
|
|
|||
|
|
```dart
|
|||
|
|
// 初始化
|
|||
|
|
await XuqmSDK.initialize(XuqmInitOptions(appKey: 'your_app_key'));
|
|||
|
|
|
|||
|
|
// 登录(业务登录成功后调用一次)
|
|||
|
|
await XuqmImSdk().login('user_001', 'your_user_sig_jwt');
|
|||
|
|
|
|||
|
|
// 登出
|
|||
|
|
await XuqmImSdk().logout();
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 下一步
|
|||
|
|
|
|||
|
|
- [Flutter IM 接入 →](./im)
|