欢迎加入开源鸿蒙跨平台社区:https://openharmonycrossplatform.csdn.net
本项目代码仓库地址:https://atomgit.com/Krneide/my_class_schedule

一、已使用的三方库

库名 用途 引用方式 鸿蒙适配
shared_preferences 用户配置存储(主题、昵称、通知开关) Git 引用(AtomGit) ✅ 鸿蒙适配版
path_provider 获取应用文档目录(数据库路径) Git 引用(AtomGit) ✅ 鸿蒙适配版
sqflite 课程/作业数据本地数据库 pub.dev 标准版 ✅ 纯 Dart 实现
path 数据库路径拼接 pub.dev 标准版 ✅ 纯 Dart 实现
provider 主题状态管理、统计服务 pub.dev 标准版 ✅ 纯 Dart 实现
intl 日期格式化 pub.dev 标准版 ✅ 纯 Dart 实现
flutter/material.dart UI 框架 Flutter SDK ✅ 引擎层适配

二、鸿蒙适配版 vs 标准版对比

类型 使用场景 示例
需要鸿蒙适配版 调用原生系统能力(存储、网络、传感器) shared_preferencespath_provider
直接使用标准版 纯 Dart 逻辑,无原生依赖 providersqfliteintl

三、可进一步开发的功能(基于现有技术栈)

3.1 高优先级(中低难度)
功能 依赖库 难度 说明
作业到期本地通知 flutter_local_notifications(需鸿蒙适配) ⭐⭐⭐ 每日定时检查作业截止日期,发送通知提醒
课表/作业导出 share_plusfile_saver ⭐⭐ 导出 JSON/CSV 文件,方便备份或分享
批量操作课程 现有 sqflite ⭐⭐ 批量删除、批量修改周次
搜索课程/作业 现有 sqflite + sqflite 查询 按名称搜索课程和作业
课程周次高亮 现有逻辑 周次选择器自动跳转到当前周
3.2 中优先级(中等难度)
功能 依赖库 难度 说明
课表分享 share_plus ⭐⭐ 将课表以文本/图片形式分享给好友
日历同步 calendar_sync(需适配) ⭐⭐⭐ 将课程和作业同步到手机系统日历
数据云备份 dio + 后端 API ⭐⭐⭐⭐ 登录账号,跨设备同步课表
桌面小组件完善 ArkTS 原生开发 ⭐⭐⭐⭐ 桌面直接显示今日课程(需鸿蒙原生代码)
3.3 低优先级(高难度/需后端)
功能 依赖库 难度 说明
课表拍照识别 camera + tesseract_ocr ⭐⭐⭐⭐⭐ 拍照自动识别导入课表
语音添加作业 speech_to_text ⭐⭐⭐⭐ 语音输入快速添加作业
智能排课 算法 + 现有数据 ⭐⭐⭐⭐ 根据学时自动推荐排课时间
课程评价系统 需要后端服务 ⭐⭐⭐⭐ 学生评价课程和教师

四、推荐的下一步功能(优先级排序)

优先级 功能 原因
1 修复添加课程弹窗无响应 当前阻断性问题,必须先修复
2 作业到期本地通知 最实用的提醒功能,用户价值高
3 批量操作课程 学期初/末批量调整周次很实用
4 课表导出分享 方便与同学共享课表
5 周次自动高亮 减少用户操作,体验优化

五、鸿蒙适配库获取方式

# pubspec.yaml 中使用 AtomGit 仓库的鸿蒙适配版
dependencies:
  shared_preferences:
    git:
      url: "https://atomgit.com/openharmony-tpc/flutter_packages.git"
      path: "packages/shared_preferences/shared_preferences"
  
  path_provider:
    git:
      url: "https://atomgit.com/openharmony-tpc/flutter_packages.git"
      path: "packages/path_provider/path_provider"

六、注意事项

要点 说明
三方库选择 优先选择纯 Dart 库,避免原生依赖适配问题
鸿蒙适配版 仅当库需要调用系统能力时才使用 Git 引用
版本锁定 Git 引用建议锁定到稳定分支,避免突然更新导致编译失败
测试验证 添加新库后必须在鸿蒙真机/模拟器上验证

总结:当前项目已合理使用鸿蒙适配版三方库实现核心功能。下一步应优先修复添加功能的阻断性 Bug,再考虑增加通知、导出等实用功能。

Logo

作为“人工智能6S店”的官方数字引擎,为AI开发者与企业提供一个覆盖软硬件全栈、一站式门户。

更多推荐