# 风影办公 · 原生客户端 一套 Flutter 代码,Android APK + Windows exe。界面按微信 / 企业微信手机端重做,不嵌 OA 网页。 底栏:消息 · 工作台 · 通讯录 · 我。 - 消息:会话列表、未读红点、全部/未读/单聊/群聊筛选,待办和待审批钉在列表顶部 - 工作台:应用宫格 + 待处理数字 + 新版本横幅 - 通讯录:组织架构、按姓氏排序、点人发消息 - 我:检查更新(OTA)、连接设置、退出 默认连接: - REST:`https://oa.fysxkj.com/api/v1` - IM:`47.96.23.244:8901`(MobileIMSDK TCP) 当前版本:`1.1.0`(build `2`)。 ## Android ```bash flutter pub get flutter build apk --release ``` 产物:`build/app/outputs/flutter-apk/app-release.apk` 发布到服务器后,用户打开 App 会自动检查升级;也可在「我 → 检查更新」手动检查。 ```bash # 把 APK 放到下载地址,并登记版本 mkdir -p /data/oa-releases cp build/app/outputs/flutter-apk/app-release.apk /data/oa-releases/fengying-oa.apk # 管理员登录后: # PATCH /api/v1/system/app-release # { "version": "1.1.0", "build": 2, "url": "https://oa.fysxkj.com/fengying-oa.apk", "changelog": "..." } ``` 公开接口 `GET /api/v1/system/app-release` 返回最新包信息。客户端比较 `build`,更大则提示下载并安装。 ## Windows 在 Windows 安装 Flutter 与 Visual Studio(Desktop development with C++)后: ```bat build-windows.bat ``` exe 在 `build\windows\x64\runner\Release\fengying_oa.exe`。 本 Linux 构建机不能交叉编译 Windows 桌面包。 ## 登录前 init Android `MainActivity` 通过 `com.fysxkj.oa/im` 暴露 `init` / `release`,通过 `com.fysxkj.oa/ota` 安装下载好的 APK。