iOS CoreBluetooth与读取响应和通知数据包有何不同?

时间:2018-08-07 18:13:05

标签: ios xamarin xamarin.ios bluetooth-lowenergy core-bluetooth

我们的外围设备具有电池特性,既可以读取又可以通知。

在Android中,这很容易,有一个用于读取响应的回调函数(onCharacteristicRead和一个用于通知数据包的回调函数(onCharacteristicChanged)。

但是在iOS中,读取和通知(didUpdateValueForCharacteristic)都只有一个回调函数,而且我们似乎找不到一种方法来识别正在发生的外围操作(读取或通知)。

有没有办法知道我们是收到读取响应还是通知?

请注意,对于仅可读或可通知的特征,我们没有任何问题,并且代码的工作方式就像一个超级符号。

1 个答案:

答案 0 :(得分:0)

无法识别读取的响应和通知,因为它们来自同一回调而没有标识符。

如果要针对特殊情况将它们区分开,则可能需要在固件端使用两种协议(一种用于读取,另一种用于通知)。因此,您可以根据自己的协议在应用程序中区分它们。通常,我们不会区分它们。