上海第二工业大学校园综合服务应用
SSPU All-in-One 是面向上海第二工业大学师生的校园综合服务应用,基于 Flutter + Fluent UI 构建,支持 Android / iOS / macOS / Linux / Windows / Web 全平台。所有数据仅保留在本地,不上传至任何云端服务。
- Flutter SDK >= 3.41.7
- Dart SDK 3.11.5(随 Flutter 3.41.7 提供)
- 各平台对应的开发工具(详见 使用文档)
git clone https://github.com/Qintsg/SSPU-all-in-one.git
cd SSPU-all-in-one
flutter pub get
flutter runflutter build apk # Android APK
flutter build web # Web
flutter build windows # Windows
flutter build macos # macOS
flutter build linux # Linux完整发布规范、Tag 规则、资产命名、发布矩阵、Release Notes 模板与门槛,统一见 docs/RELEASE.md。
当前公开 Release 仍然通过带 release 标签的 PR merge 自动触发,版本号只读取 pubspec.yaml。
- 本仓库支持通过
android/key.properties加载本地签名配置;当前工作区已生成一个本机自签名 keystore:android/app/sspu-release.jks android/key.properties与.jks文件默认不会提交;若需在新机器复用,请参考android/key.properties.example重新生成或复制 keystore- GitHub Actions 进行 Android release build 时,不依赖仓库内签名文件;可通过 Secrets 在运行时下发签名材料:
ANDROID_KEYSTORE_BASE64ANDROID_KEYSTORE_PASSWORDANDROID_KEY_ALIASANDROID_KEY_PASSWORD - 公开 Release 默认上传通用 APK:
SSPU-All-in-One-v{version}-android-universal.apk - 构建命令:
flutter build apk --release
flutter build appbundle --release- 产物位置:
build/app/outputs/flutter-apk/app-release.apkbuild/app/outputs/bundle/release/app-release.aab - 使用方式:
app-release.apk可直接分发安装app-release.aab用于应用商店上架,不适合直接本地安装
- 构建命令:
flutter build windows --release- 产物位置:
build/windows/x64/runner/Release/build/windows/arm64/runner/Release/ - 使用方式:
将
x64架构的整个Release/目录连同其中的 DLL 和data/一起分发;直接运行目录中的sspu_all_in_one.exeRelease workflow 会同时生成:SSPU-All-in-One-v{version}-windows-x64-installer.exeSSPU-All-in-One-v{version}-windows-x64-portable.zipSSPU-All-in-One-v{version}-windows-arm64-installer.exeSSPU-All-in-One-v{version}-windows-arm64-portable.zip
- 构建命令:
flutter build linux --release- 产物位置:
build/linux/x64/release/bundle/build/linux/arm64/release/bundle/ - 使用方式:
打包并分发整个
bundle/目录;目标机器上运行./sspu_all_in_one对公开 Release,workflow 会统一生成:SSPU-All-in-One-v{version}-linux-x64-appimage.AppImageSSPU-All-in-One-v{version}-linux-x64-deb.debSSPU-All-in-One-v{version}-linux-x64-rpm.rpmSSPU-All-in-One-v{version}-linux-x64-portable.tar.gzSSPU-All-in-One-v{version}-linux-arm64-appimage.AppImageSSPU-All-in-One-v{version}-linux-arm64-deb.debSSPU-All-in-One-v{version}-linux-arm64-rpm.rpmSSPU-All-in-One-v{version}-linux-arm64-portable.tar.gz
- 构建命令:
flutter build macos --release- 产物位置:
build/macos/Build/Products/Release/ - 使用方式:
分发生成的
.app包;首次运行若被系统拦截,需要在“系统设置 → 隐私与安全性”中手动放行 公开 Release 当前默认提供未签名 DMG:SSPU-All-in-One-v{version}-macos-universal-unsigned.dmg
- 构建命令:
flutter build web --release- 产物位置:
build/web/ - 使用方式:
将整个目录部署到任意静态文件服务器,并确保服务器对
index.html开启 SPA 路由回退 公开 Release 会将静态站点压缩为:SSPU-All-in-One-v{version}-web-universal-static.zip