立项背景和目标:智能音箱的配套APP
软件功能:用户登录注册、日志本地存储、多语言、google第三方登录、消息推送、设置(清空缓存、)等
核心模块:蓝牙配网、国外开源第三方音乐库spotify接入、远程IOT设备控制(音量、灯光)、大模型聊天、语音转文字stt、文字生成语音tts
1.整体架构:使用flutter技术,项目架构分为页面层、状态管理层、数据层、工具层、公共组件层、常量层。
架构描述要点:状态管理方案Riverpod
2.项目从0到1都是本人开发,所有核心功能均已实现。
3.遇到的问题:比如线上设备日志获取不到,问题无法排查,采用本地日志存储+接入sentry日志平台综合解决;比如googlePlay商店上架流程复杂,审核日期长,权限使用要明确等;比如蓝牙配网,采用flutter_bluetooth组件;比如大模型聊天室,接入阿里云百炼大模型,比如需要将大模型返回文字转换为语音播放,使用了tts技术,要将语音转文字告诉大模型,使用了stt技术等等;也接入过一些AI能力,比如图生视频、去背景、物品擦除等等。
优化:首页加载缓慢问题,原因:main方法中执行太多初始化阻塞UI线程,解决:使用微任务队列并且优化首屏加载方式,使加载速度由5s提升至2s左右;优化图片加载缓慢问题:使用图片预处理技术,提前缓存图片,相同图片使用cacheNetWorkImage、hero等组件