浏览 SDKs · Flutter
平台
SDKsFlutter

开始之前

准备 OpenIMServer、用户登录信息和 Flutter 运行环境,再开始认证或发送消息。

复制

在 Flutter 应用中接入 OpenIM Flutter SDK 前,需要先准备可访问的 OpenIMServer、用户登录信息,以及 Android 或 iOS 工程环境。这些条件同时适用于认证与管理登录会话和发送第一条消息。

准备 OpenIMServer

如果还没有可用的 OpenIMServer,先按 Docker 部署完成部署,并确认移动设备可以访问以下地址:

字段说明
apiAddrOpenIMServer 的 HTTP API 地址,用于登录、同步和资源请求。
wsAddrOpenIMServer 的 WebSocket 地址,用于长连接和实时事件。

不要只在开发电脑上验证地址。还应从真机或模拟器检查 DNS、TLS 证书、防火墙、反向代理和 WebSocket 升级;生产应用应使用 HTTPS 与 WSS。

准备用户和 Token

userID 标识 OpenIM 体系中的用户,Token 用于认证当前用户。业务后端负责创建或绑定用户,并向 Flutter 客户端提供相互匹配的 userID 和 Token。

后端接入 OpenIMServer REST API 前,可阅读接入准备和获取用户 Token。Flutter SDK 登录需要以下数据:

class OpenIMSDKSession {
  const OpenIMSDKSession({
    required this.userID,
    required this.token,
    required this.apiAddr,
    required this.wsAddr,
  });

  final String userID;
  final String token;
  final String apiAddr;
  final String wsAddr;
}

userID 必须与 Token 对应,否则登录会失败。

准备 Flutter 工程

Flutter SDK 支持 Android 和 iOS。接入前确认:

  • Flutter 与 Dart 版本符合包的 pubspec.yaml 约束。
  • Android 和 iOS 工程具有网络权限,最低系统版本及构建配置符合 SDK 要求。
  • 已准备 SDK 数据目录;可使用 path_provider 取得应用文档目录,不要写入临时或共享目录。
  • 真机能够访问 apiAddr、wsAddr 以及消息媒体资源域名。
  • 应用能够处理前后台切换、网络恢复、Token 失效和多端登录等状态变化。

具体初始化方式见按运行环境接入。

继续接入

准备工作完成后,建议先完成认证与管理登录会话。在确认登录成功且收到 OnConnectListener.onConnectSuccess 连接就绪事件后,再按照发送第一条消息验证收发链路。