我正计划在Android设备和使用商用蓝牙模块的自定义传感器之间使用的通信协议。我将使用SPP配置文件,它被称为“向用户提供简单可靠的数据流,类似于TCP”。蓝牙Android RFCOMM/SPP错误处理建议
我对蓝牙技术并不是很熟悉,并对设计这样的协议有一些疑问。
首先,我不清楚我是否必须担心被传输的数据是否被损坏。基础协议堆栈会保证我从Android提供的InputStream
读取的字节与UART在传感器端收到的字节相同吗?我是否必须定义自己的受CRC或其他东西保护的数据包,还是会过度杀伤?
从Android蓝牙文档中我不清楚我的应用程序中发生了什么,如果信号很弱并且暂时丢失了。我是否一次得到IOException
,或者该平台为我提供了一些隐藏的错误处理和恢复功能,可以让我看不到这种短暂的中断?
感谢您的任何建议。
非常感谢你,这个答案非常明确,涵盖了所有我想知道的。 – jabal
不客气 –