项目背景
我是一个工作了 8 年的 Android 软件开发者,因为工作需要,最近也在同步开发着鸿蒙应用。因此,在工作不忙之时学习鸿蒙软件开发的一些主要知识点,这才有了《睡好点》应用的开发,通过这种方式来实现自我提升。
项目介绍
这是一款能改善睡眠质量的App,通过系统录音获取 PCM 原始数据,计算并得到噪音后,生产 wav 文件,以日记形式记录每日的睡眠质量。并且通过播放音乐放松心情,改善睡眠质量。
项目内容
- 开发语言:ArkTS;
- 框架:使用系统路由,Navigation + Tabs 框架搭建多module,实现沉浸式主题、全局只有一个@Entry、禁止返回弹窗、loading 等。
- 录音:开启后台长时录音,使用多线程 worker 进行计算并保存PCM数据。
- 播放:播放本地 wav 音频文件和在线音乐。
- 日记:通过日记形式记录并分析当月/天的睡眠情况。
- 头像:通过拍照和选择相册形式获取图片,并且压缩到指定大小后转 base64 进行保存。
- 后台:使用 magic-api 搭建的 Spring Boot 后台服务,为应用提供了广告页、公告弹窗、应用升级等接口。
- 网络:对 axios 进一步封装,适配 magic-api 数据结构的基础网络请求框架。
- 登录:实现华为第三方登录和密码登录。
- 组件:自定义组件 NoisePattern ,用于开启或关闭录音并显示当前音量;使用 mpchart 以图示展现睡眠质量等。
- 其他:略。
项目地址
https://gitee.com/qincji/ZeroOneApp
通过筛选标签:《睡好点》来查看相关的文章!