iOS CoreBooth与读取响应和通知包有何不同?
我们的外围设备上有一个电池特性,既可读又能发出通知 在Android中,很简单,有一个用于读取响应的回调函数(iOS CoreBooth与读取响应和通知包有何不同?,ios,xamarin,xamarin.ios,bluetooth-lowenergy,core-bluetooth,Ios,Xamarin,Xamarin.ios,Bluetooth Lowenergy,Core Bluetooth,我们的外围设备上有一个电池特性,既可读又能发出通知 在Android中,很简单,有一个用于读取响应的回调函数(onCharacteristicRead),还有一个用于通知数据包的回调函数(onCharacteristicChanged) 但在iOS中,只有一个用于读取和通知的回调函数(didUpdateValueForCharacteristic),我们似乎无法找到一种方法来识别正在发生的外围操作(读取或通知) 有没有办法知道我们收到的是读取响应还是通知 请注意,对于只能读取或通知的字符,我们没
onCharacteristicRead
),还有一个用于通知数据包的回调函数(onCharacteristicChanged
)
但在iOS中,只有一个用于读取和通知的回调函数(didUpdateValueForCharacteristic
),我们似乎无法找到一种方法来识别正在发生的外围操作(读取或通知)
有没有办法知道我们收到的是读取响应还是通知
请注意,对于只能读取或通知的字符,我们没有任何问题,代码就像一个字符一样工作。无法识别读取响应和通知,因为它们来自同一个回调,没有标识符
如果您想在特殊情况下区分它们,您可能需要在固件端使用两个协议(一个用于读取,另一个用于通知)。因此,您可以在应用程序中使用您的协议来区分它们。一般来说,我们不区分它们。首先,你为什么关心它们?您获得了一个新值,因此只需根据需要处理它。但要回答你的问题,没有办法确定。您可以在发出读取时设置一个标志,然后在获得更新的值时进行检查;如果设置了,那么很可能这是对您阅读的响应的更新,但您不能确定。我真的不在乎。。。我只是好奇。无论哪种方式,我的应用程序都运行良好。