Skip to content

XHIM Flutter UI Kit 示例应用

这是可以直接运行的 Android、iOS 和 macOS 示例,不是只展示 API 片段的页面。 它用 xhim_flutter 管理账号级 SDK 生命周期,用 xhim_flutter_ui 提供会话、聊天、 通讯录、资料、群聊、二维码和媒体界面。

运行

  1. 安装 Flutter 稳定版,并准备对应平台工具链;
  2. 在本目录执行 flutter pub get
  3. 若 Android SDK 位于私有 Maven,设置 XHIM_MAVEN_REPOSITORY_URL,凭据通过 XHIM_MAVEN_USERNAME / XHIM_MAVEN_PASSWORD 注入,不写进仓库;
  4. Apple 本地联调可把 XHIM_APPLE_SDK_PATH 指向解压后的 XHIM CocoaPods 包;正式 项目则从公司的私有 Specs 仓库解析同一版本;
  5. 执行 flutter run,输入 XHIM 服务地址、用户账号和业务后端签发的访问凭证;
  6. Development 服务允许空凭证时可以留空,生产环境不得在 App 内生成或保存管理员密钥。

最低平台为 Android 24、iOS 15 和 macOS 12。Android 已声明联网与扫码权限;Apple 平台已声明扫码用途,宿主不需要复制模板权限配置。

二次开发边界

  • _LoginPage 只负责收集登录输入并创建账号级 Client;
  • _ConversationPage 独占 Client、Repository、前后台 Binding 和账号治理 Binding;
  • UI Kit Controller 负责查询 SDK 本地权威投影,页面不直接读 SQLite;
  • accountStateChanged 会先清自动登录凭证、退出当前账号,再用固定安全文案返回登录页;
  • typed BusinessNotification 只在通知卡片显示标题和正文,私有 data 不进入通用 UI 或日志;
  • 通知服务账号不会作为普通好友目标。

实际项目应把登录信息、导航和业务路由继续拆到 Application/Infrastructure/Features 目录;不要把 Token 放入 Widget,也不要为一个页面重复创建 Client。完整说明见上级 UI Kit README与仓库的客户端二次开发指南。

XHIM 客户端 SDK 与服务端文档