麦芽云助手是公司智能硬件产品线(云宝盒、点读笔)的配套小程序,为用户提供设备管理、蓝牙配网、点读包在线共享与自制等功能。该项目的技术挑战主要集中在蓝牙 BLE 通信的稳定性与音频文件处理上。
我的职责:
负责小程序客户端的完整开发,以及云宝盒设备上游服务端的设计与开发。重点攻克蓝牙通信稳定性、大文件传输、音频编辑等技术难点。
技术架构:
客户端:微信小程序原生 + uni-app(部分模块),蓝牙 BLE 通信
服务端:Express.js + TypeScript,FTP 文件服务
技术难点与解决方案:
1) 蓝牙 BLE 通信稳定性
挑战:微信小程序的蓝牙 API 在不同手机品牌 / 系统版本上表现差异大,连接不稳定、数据丢包、MTU 协商失败等问题频发
方案:
封装蓝牙通信中间层 SDK,统一管理设备扫描、连接、服务发现、特征值读写全流程
实现自动重连机制(最大重试 3 次,指数退避间隔),连接状态实时反馈给 UI 层
大数据包自动分包传输(根据 MTU 协商结果动态分包),接收端按序组装并校验完整性
针对 iOS / Android 差异做兼容处理(如 iOS 不支持主动获取 MTU,Android 需要手动请求 MTU 等)
2) 自制点读包功能
挑战:用户需要在小程序内上传音频、图片、文本,组合生成自定义点读包,涉及多媒体文件处理与大文件上传
方案:
前端实现音频录制 + 裁剪 + 预览功能,支持从本地相册 / 文件选择素材
大文件采用分片上传方案,支持断点续传与上传进度实时展示
点读包元数据采用 JSON 结构化存储,与音频 / 图片资源分离管理
批量制作模式:支持 Excel 模板导入,解析模板后自动匹配音频文件批量生成点读包