XuqmGroup-Web/docs-site/docs/flutter/setup.md

73 行
1.8 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.2
```
> Gitea Package Registry 暂不支持 Dart/Flutter 包格式,因此通过 Git Tag 方式发布。
---
## 模块说明
| 模块 | 包 | 功能 |
|------|-----|------|
| `xuqm_flutter_common` | `packages/common` | 初始化、网络、配置管理 |
| `xuqm_flutter_im` | `packages/im` | 单聊、群聊、消息收发、会话、好友、群组 |
| `xuqm_flutter_push` | `packages/push` | 设备 Token 注册、厂商检测Android/ APNsiOS|
| `xuqm_flutter_update` | `packages/update` | App 版本检查、商店跳转、APK 下载Android|
| `xuqm_flutter_license` | `packages/license` | 设备授权注册与验证License SDK|
---
## 初始化
```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)
- [Flutter 推送接入 →](./push)
- [Flutter 版本更新 →](./update)
- [Flutter 授权管理 →](./license)