产品简介
SerialPortHelper 这是一个Android串口通讯辅助库,旨在解决与各类硬件设备进行串口通讯时面临的协议适配复杂、粘包分包处理困难的问题。它通过内置的协议解析模型,帮助开发者快速接入售货机、游戏机、快递柜等支持串口通讯的设备,特别适合需要为这类硬件开发配套App的开发者。
核心功能
- 支持三种串口协议模式:无协议、固定长度、可变长度
- 内置粘包与分包处理逻辑,简化协议解析
- 支持同时监听多种不同的协议报文头
- 新增DTR/RTS硬件流控制线支持,适配USB转串口设备
- 支持同时打开和管理多个串口设备
快速开始
- 在项目根目录的build.gradle中添加JitPack仓库地址:`maven { url 'https://jitpack.io' }`
- 在模块的build.gradle中添加依赖:`implementation 'com.github.alanqjt:SerialPortHelper:v4.0.0'`
- 使用`Parameter.Builder`创建通讯参数,设置串口路径、波特率、协议头及协议模式
- 创建`SerialHelper`实例,调用`serialStart(parameter)`方法打开并连接串口
- 通过`sendData`方法发送数据,通过`OnSerialPortDataListener`回调接收数据
界面预览
与其他方案对比
| 对比项 | SerialPortHelper | 同类方案 |
|---|---|---|
| 协议支持 | 内置三种协议模式(无协议、固定长度、可变长度)及粘包处理,可同时监听多种协议头。 | 通常仅提供基础的串口数据读写,协议解析需完全自行实现。 |
| 平台支持 | 明确支持Windows、macOS、Linux,实际开发环境兼容性更广。 | 仅支持Android平台。 |
| 硬件控制 | 新增DTR/RTS控制设置,并默认拉高,更利于USB转串口设备兼容。 | 多数不提供DTR/RTS引脚控制。 |
适合谁用
- 为自助终端设备(如售货机、咖啡机)开发Android应用的开发者
- 需要处理串口协议粘包分包问题的硬件项目开发者
- 开发口红机、快递柜、游戏机等设备配套软件的工程师
下载与版本
当前最新版本为 v4.0.0,发布于 2026-06-08。支持 Windows、macOS、Linux。
⚠️ 注意:本项目仅提供源代码下载,不包含可直接运行的安装包(exe/dmg/apk 等。下载后需要自行编译构建才能使用,适合有一定开发经验的用户。如果你不熟悉编译流程,建议寻找同类开箱即用的替代方案。
注意事项
- 本工具仅供学习和研究使用,请遵守相关法律法规。
- 请尊重内容创作者版权,勿将下载内容用于商业或非法传播。
- 项目源码地址:https://github.com/alanqjt/SerialPortHelper