蓝牙每发送一次数据,都要调用一次wx.onBLECharacteristicValueChange才能返回数据吗? 还是调用了wx.notifyBLECharacteristicValueChange后,再进行wx.onBLECharacteristicValueChange调用一次,之后就自动回传数据? 我的使用情况是蓝牙每10s就要进行一次数据收发,需要实时得到数据。 请问大家使用这wx.onBLECharacteristicValueChange和wx.notifyBLECharacteristicValueChange需要注意什么?
其实你分开用wx.onBLECharacteristicValueChange和wx.notifyBLECharacteristicValueChange都可以,因为wx.onBLECharacteristicValueChange其实就是一个服务窗口,你填function listener就是告诉微信如果蓝牙发来数据,你按照我填的这个function listener来处理,比如最简单的在控制台打印出来。所以我在进入页面最开始,比如onReady函数中我就先填完然后调用wx.onBLECharacteristicValueChange一遍也行。wx.notifyBLECharacteristicValueChange是你要在完全连接到蓝牙之后调用一次,因为他的参数需要deviceId、serviceId和characteristicId这三个。notify调用过之后你就可以正常write了,你甚至不用主动调用read,因为你write之后如果蓝牙硬件设备回复了信息,你在wx.onBLECharacteristicValueChange里注册的listener会自动调用
有高手可以回答一下吗?