iOS蓝牙BLE读取数据的最大尺寸

时间:2017-06-13 08:34:15

标签: ios iphone bluetooth bluetooth-lowenergy

我有一个可在BLE设备上读/写的iOS应用。该设备向我发送超过20个字节的数据,我看到它们被修剪。基于以下线程

Bluetooth LE maximum transmission size

看起来iOS正在削减数据。该线程显示了如何编写更大数据大小的解决方案,但我们如何read信息大于20个字节?

1 个答案:

答案 0 :(得分:0)

对于像我一样在几年后看这个帖子的任何人,我们也有一次遇到了这个问题。我想分享一些大于20个字节的数据的有用提示。

  • 由于数据大于一个数据包可以处理,因此您将需要以多个数据包发送。如果您的数据始终以某种END字节结尾,则将有很大帮助。对于我们来说,我们的结束字节给出了总字节数组的大小,因此我们可以在读取结束时进行检查。
  • 创建一个循环,不断检查数据包,并在接收到该结束字节时停止该循环(对于该循环有一个超时也将是一件好事)。
  • 确保在开始新的读取时清除“缓冲区”。
  • 最好有一个“ isBusy”布尔值来跟踪当前是否有另一个函数正在等待从设备读取数据。这样可以防止读取重叠。对于我们来说,如果端口当前很忙,请等待半秒钟,然后重试。

希望这会有所帮助!