主题
XHIM Flutter SDK
标准 Flutter plugin,Dart 页面只依赖 XHIMFlutterClient;iOS、macOS 和 Android 桥分别调用对应原生 XHIM SDK,消息同步、Outbox、数据库和重连仍由同一 C++ Core 负责。
yaml
dependencies:
xhim_flutter:
git:
url: git@git.xihansoftware.com:laowang/xhimsdk.git
path: platforms/flutter/xhim_flutter
ref: <购买方锁定的版本标签>dart
final client = await XHIMFlutterClient.connect(
server: 'https://im.example.com',
userId: currentUserId,
credentialProvider: accountService.fetchXHIMCredential,
);
final conversationId = await client.directConversation('bob');
await client.sendText(
conversationId: conversationId,
text: 'Hello from Flutter',
);仓库中的 example/ 是可运行的最小 App:只需要修改 Server URL、当前 User ID 和对端 User ID。Flutter SDK 安装完成后执行:
bash
cd example
flutter pub get
flutter runDevelopment Server 开启免密测试登录时省略 credentialProvider。Production Provider 只在账号层实现;页面不保存 Token,SDK 收到凭证续期事件后会自动再次 调用 Provider。
原生依赖
- iOS:私有 CocoaPods Specs 中的
XHIMiOS 包; - macOS:包含 macOS slice 的
XHIM包; - Android:私有 Maven 中的
com.xihansoftware.xhim:xhim-sdk。
购买方只配置一次私有包源,不需要编译 C++。发布人员必须让三处版本与 pubspec.yaml 完全一致。
当前适配面
首个包覆盖连接/续期、事件、单聊、文字/自定义消息、会话与消息分页、已读、 未读数、登出和关闭。附件、社交/群组、离线 Reader 及 UI Kit 将按同一平台 接口继续映射;在这些方法进入 Dart API 和三端消费者测试前,不应宣传为完整 Flutter Core parity。