行业资讯
毕设 / 课程设计完整项目交付文档模板(基于上文整套 OpenHarmony 分层架构)
一、项目概述1.1 项目名称基于 OpenHarmony API23 的轻量化笔记管理系统1.2 开发环境系统DevEco Studio NEXT BetaAPI 版本API Version 23开发语言ArkTS架构模式四层分层架构entry har_base 公共底层 业务 HAR HSP 动态分包1.3 功能概述用户模块账号本地缓存、登录校验、深色模式切换、退出登录笔记核心模块新建、编辑、删除、分页列表、关键词模糊搜索媒体模块相册单选 / 多选图片、图片压缩、头像上传、图片缓存清理本地持久化RDB 关系数据库存储笔记Preferences 存储用户配置、登录凭证通用基础能力网络请求、全局弹窗、动态权限申请、统一日志、文件缓存管理性能优化HSP 按需分包、下拉刷新 上拉分页、页面状态兜底视图、全局主题深浅切换1.4 技术亮点模块化解耦HAR 静态复用 HSP 动态分包主包轻量化冷启动速度提升全套底层工具封装网络、数据库、存储、路由、弹窗、权限、图片、文件、日志统一工具类响应式全局状态管理AppStoragePersistentStorage 实现持久化全局状态标准化 UI 体系统一主题色彩、尺寸、圆角一键切换深浅两套主题工程规范约束单向依赖无循环、资源命名规范、页面生命周期资源自动回收完善异常处理网络异常、空数据、加载失败兜底视图分级日志生产环境屏蔽调试信息二、总体系统架构设计2.1 四层分层结构图入口层 entry应用启动入口、EntryAbility 全局初始化、首页 / 登录 / 设置常驻页面、HSP 加载调度、路由权限拦截公共底层层 har_base所有通用工具类、全局类型常量、通用 UI 组件、主题样式、基础资源全模块共享无业务耦合业务静态层 har_user /har_note用户、笔记独立业务实体、数据库操作、业务专用组件仅依赖 har_base业务之间隔离动态分包层 hsp_note_editor笔记编辑器重型页面运行时按需加载用完卸载释放内存不打包入主包2.2 模块依赖约束单向依赖流向页面 / HSP → 业务 HAR → har_basehar_base无任何依赖业务 HAR仅依赖 har_base业务模块禁止互相引用HSP依赖 har_base 对应业务 HARHSP 之间禁止依赖entry依赖全部 HAR、HSP 模块统一调度所有业务2.3 技术模块依赖关系图plaintext页面业务代码 ↓ RouterUtil / DialogUtil / PermissionUtil / GlobalStore / ThemeUtilhar_base ↓ 底层系统APIrouter、relationalStore、preferences、net.http、accessToken、file.picker、fileio三、模块详细设计3.1 entry 主模块EntryAbility初始化所有工具上下文FileUtil、LogUtil、PermissionUtil配置生产环境日志等级屏蔽 DEBUG 调试日志绑定 PersistentStorage 持久化全局状态监听应用前后台生命周期清理缓存、释放资源常驻页面Index 首页功能导航、登录状态判断、跳转 HSP 编辑器入口Login 登录页账号密码登录、本地缓存账号、登录状态写入全局 StoreSetting 设置页深色模式切换、缓存大小查看、一键清理缓存、退出登录Mine 个人中心展示用户头像、账号信息、退出登录弹窗确认内置工具HspLoadUtilHSP 分包加载、防重复加载锁、跳转封装3.2 har_base 公共底层库工具类 utilsHttpUtilaxios 风格网络请求拦截器、全局 loading、文件上传、请求销毁RdbUtil关系数据库通用封装增删改查、分页、事务批量操作PrefUtil轻量键值存储用户配置持久化多文件隔离存储RouterUtil路由统一封装、登录拦截、HSP 分包路由、栈清空管理DialogUtil全局弹窗提示 / 确认 / 输入 / 加载弹窗、页面销毁批量关闭PermissionUtil动态权限申请区分永久拒绝并跳转系统设置ImagePickerUtil相册单选多选、相机、图片压缩、图片保存相册FileUtil沙盒文件读写、目录创建、缓存大小计算、一键清理缓存LogUtil四级分级日志、敏感信息脱敏、本地日志文件持久化GlobalStoreAppStorage 全局状态管理、持久化绑定、登录状态批量操作ThemeUtil全局主题色彩、尺寸常量、深浅主题自动切换通用 UI 组件 components/commonStateView页面四状态视图加载中 / 空数据 / 错误 / 正常内容RefreshListView下拉刷新、上拉分页、请求防抖锁、无更多底部提示model 全局常量与类型Constant.ets页面路由常量、HSP 包名常量、全局状态 Key 常量GlobalState.ets全局状态完整 TS 类型约束、用户信息实体theme.ets尺寸常量、浅色 / 深色两套色彩、卡片通用样式3.3 har_user 用户业务 HARmodelUserInfo 用户实体类logic登录接口请求、头像上传逻辑components用户头像卡片、个人信息展示组件3.4 har_note 笔记业务 HARmodelNote 笔记实体类db笔记数据表创建、RDB 数据库 CRUD、分页模糊查询components笔记列表条目卡片组件3.5 hsp_note_editor 动态分包pages笔记新增 / 编辑页面logic笔记保存、图片插入业务逻辑components编辑器输入框、图片预览子组件四、数据库设计RDB SQLite4.1 用户表可选拓展本项目用户数据以 Preferences 存储为主4.2 笔记表 note表格字段名类型约束说明idINTEGERPRIMARY KEY AUTOINCREMENT笔记自增主键titleTEXTNOT NULL笔记标题contentTEXTNULL笔记正文内容create_timeINTEGERNOT NULL创建时间戳建表 SQLsqlCREATE TABLE IF NOT EXISTS note ( id INTEGER PRIMARY KEY AUTOINCREMENT, title TEXT NOT NULL, content TEXT, create_time INTEGER );五、核心功能流程设计5.1 用户登录流程进入 Login 页面PrefUtil 读取本地缓存账号回填输入框输入账号密码点击登录按钮HttpUtil 发起登录 POST 请求全局 Loading 弹窗展示请求成功 ① Token、账号存入 Preferences 持久化 ② GlobalStore 批量写入登录状态、用户信息全局状态 ③ RouterUtil.replace 跳转首页不保留登录返回栈请求失败弹窗提示错误信息保留页面重新输入5.2 笔记分页加载流程进入笔记列表页面页面状态置为 LOADING调用 har_note 数据库工具分页查询笔记数据判断返回数组长度长度 0 → StateView 展示空数据页面查询异常 → StateView 展示错误页面提供重试按钮正常数据 → 渲染 RefreshListView 分页列表下拉刷新重置页码重新查询第一页数据上拉触底查询下一页数据追加至列表不足分页条数标记无更多数据5.3 新建笔记HSP 分包加载流程首页点击新建笔记按钮RouterUtil 内置登录拦截未登录弹窗提示跳转登录HspLoadUtil 校验分包未加载执行 loadPackage 加载 hsp_note_editor分包加载完成pushHsp 跳转编辑器页面编辑器可唤起相册选择图片自动校验媒体动态权限、压缩图片存入缓存目录保存笔记调用 har_note 数据库插入方法返回列表页unloadPackage 卸载 HSP 分包释放内存下拉刷新列表展示新增笔记5.4 深色模式切换流程设置页读取 GlobalStore 全局 darkMode 状态赋值页面 State切换 Toggle 开关GlobalStore 修改深色全局变量PersistentStorage 自动同步写入 Preferences重启 APP 配置不丢失ThemeColor () 自动读取全局状态切换深浅两套色值页面所有 UI 实时刷新配色5.5 缓存清理流程设置页加载时调用 FileUtil 计算 cacheDir 缓存大小格式化单位展示点击一键清理弹窗二次确认确认后递归删除全部缓存目录重新计算缓存大小更新页面六、关键工具类功能说明6.1 HttpUtil 网络工具统一请求头自动携带 token全局自动 loading 弹窗请求结束自动关闭401 登录失效自动清空登录状态跳转登录页页面销毁批量 abort 中断所有请求防止内存泄漏支持图片表单上传自动压缩图片后上传接口6.2 RdbUtil 数据库工具单例封装页面注入上下文初始化、退出关闭数据库释放文件锁支持单条增删改查、关键词模糊分页查询批量事务插入异常自动回滚保证数据完整性ResultSet 使用完毕自动关闭避免内存占用6.3 GlobalStore 全局状态区分持久化状态登录、深色模式、临时内存状态用户信息watch 监听状态变化页面销毁解绑监听杜绝回调报错封装登录 / 退出批量操作方法统一管理登录相关全局变量6.4 DialogUtil 弹窗工具统一缩放淡入动画、遮罩拦截底层点击页面退出批量关闭所有弹窗遮罩不残留阻塞页面交互加载弹窗、确认删除弹窗、输入弹窗一行代码调用七、UI 设计规范7.1 主题色彩两套体系浅色主题白底卡片、深黑色文字、蓝色主色调深色主题深色页面背景、灰色卡片、浅白色文字、亮蓝色主色调统一功能色成功绿、警告橙、危险红两套主题独立适配7.2 尺寸规范统一间距4/8/12/16/24 五级间距圆角4/8/12/16 / 全圆角五级圆角字号12 提示字、14 辅助字、16 正文、18 副标题、22 标题、26 大标题控件高度36 小按钮、44 标准按钮、48 输入框7.3 页面通用布局规范页面统一外边距 12px列表卡片统一 12px 内边距、12px 圆角、轻微阴影按钮统一标准高度 44px主色填充圆角按钮八、性能优化方案分包体积优化编辑器重型页面拆分 HSP 动态分包主包仅保留核心页面安装包体积大幅缩小内存优化HSP 页面退出调用 unloadPackage 卸载分包释放代码与资源RDB、文件句柄页面销毁统一 close 释放网络请求页面销毁全部 abort 中断避免无效回调图片 PixelMap、ImageSource 使用完毕主动 release 释放图像内存全局状态监听页面销毁解绑动画组件销毁停止无限循环动画列表渲染优化分页加载不一次性查询全部数据库数据RefreshListView 内置请求锁防止快速滑动重复发起分页请求BuilderParam 插槽局部刷新数据更新不重绘整个页面启动优化冷启动仅加载 entryhar_base 核心模块HSP 按需延迟加载页面 onLoad 不自动预加载分包用户点击后再加载存储优化临时图片存入 cacheDir支持一键清理缓存大体积结构化数据使用 RDB简单配置使用 Preferences 分开存储九、异常处理机制网络异常请求捕获异常页面切换 ERROR 状态提供重试按钮分级 ERROR 日志记录报错详情权限异常无对应权限弹窗提示永久拒绝跳转系统设置页面手动开启数据库异常数据库操作捕获异常日志记录 SQL 错误页面弹窗提示操作失败文件 IO 异常文件读写失败弹窗提示自动关闭文件句柄防止占用空数据异常列表长度为 0 自动展示空页面视图友好提示用户暂无数据分包加载异常HSP 加载失败弹窗提示清除加载锁允许重新点击加载十、测试方案10.1 功能测试用户登录正确账号登录成功、错误账号提示失败、重启保留登录状态笔记 CRUD新增、编辑、删除、模糊搜索、分页加载全部正常媒体功能相册单选 / 多选图片、图片压缩、保存至系统相册无崩溃设置功能深浅模式切换实时生效、缓存计算、一键清理缓存分包测试首次点击编辑器加载分包返回卸载重复打开可重新加载10.2 兼容性与性能测试低配置设备滑动列表无卡顿、下拉刷新动画流畅内存测试反复进出 HSP 分包内存无持续上涨、无内存泄漏重启测试深色模式、登录账号重启 APP 配置不丢失弱网测试网络断开展示错误页面恢复网络点击重试正常加载10.3 异常测试永久拒绝相册 / 相机权限弹窗引导跳转设置快速重复点击按钮防抖锁拦截重复请求数据不重复新增页面中途退出后台无残留弹窗、无持续执行网络请求、无动画后台运行十一、项目部署与打包说明开发调试DevEco Studio 连接真机 / 模拟器直接运行打包配置HSP 模块 deliveryWithInstalltrue打包自动拆分动态分包发布环境配置EntryAbility 设置日志等级LogLevel.INFO屏蔽所有 DEBUG 调试日志关闭本地文件日志输出减少存储空间占用关闭 http 明文访问 cleartextTraffic仅使用 HTTPS 接口打包产物hap 主包 独立 hsp 分包设备安装时自动合并十二、项目总结本项目基于 OpenHarmony API23 搭建标准化四层分层架构笔记管理系统实现用户登录、笔记增删改查、图片媒体处理、本地持久化存储、全局主题切换等完整业务功能。 项目实现工程化标准封装将网络、数据库、存储、路由、弹窗、权限、文件、日志等底层能力统一封装为复用工具类通用 UI 组件解耦复用利用 HSP 动态分包实现安装包体积与内存占用优化配套完整的异常兜底视图、深浅双主题、生命周期资源回收机制。 整套代码严格遵循单向依赖分层规范代码复用率高、耦合度低、易拓展维护可作为鸿蒙课程设计、毕业设计完整交付项目同时架构可拓展至商城、资讯、备忘录等各类鸿蒙应用开发。十三、拓展优化方向可选加分项新增笔记标签分类、笔记排序功能新增本地笔记数据导出为文件、导入恢复功能新增云同步模块对接后端实现多设备笔记同步新增字体大小调节、多套主题色自定义换肤新增消息通知模块笔记定时提醒功能新增数据加密对本地 RDB 笔记内容加密存储保护隐私
郑州网站建设
网页设计
企业官网