iOS会保证完整交付BLE特征值吗?

时间:2018-04-13 21:23:09

标签: ios embedded bluetooth-lowenergy core-bluetooth

当我向iOS询问BLE特性的最大值长度时,通常会给出一个超过20个字节的数字。通常它大约是150或200.这意味着iOS已经可以将长特征值分解为数据包大小的块并逐个发送它们。但iOS是否保证完整交付?我问,因为我听说如果发生任何错误,某些BLE SoC设备将在特征传输中间完全断开连接。什么控制了这种行为? iOS可以从断开的连接中恢复,还是不尝试?

1 个答案:

答案 0 :(得分:1)

如果连接在完成之前终止,GATT交易将被取消。

如果发生断开连接,iOS将不会自动重新连接到从设备;您将需要再次连接并尝试再次执行GATT操作。

请注意,GATT写入是原子的,这意味着要写入完整值,要么根本不写。