小程序BLE主机,连接多个外围设备,并发通信发数据卡顿怎么解决?
小程序按照官方BLE主机连接从机的流程,对多个BLE设备(4台)进行连接通信, 安卓手机调试时,每个设备连接过程都进行了MTU协商256字节; 苹果手机调试时,每个设备连接过程都进行了MTU协商,协商的字节数根据苹果机的官方要求不超过158字节。 保持连接从设备期间,同时向多个从设备下发BLE数据,调用小程序API接口: wx.writeBLECharacteristicValue({
deviceId,
serviceId,
characteristicId: item.uuid,
value: buffer,
})
实际操作过程中,出现不同现象的卡顿、异常、截止情况: 1、四个设备当中,第一设备可以正常完整下发,到第二个设备时,出现不少于1分钟的卡顿(期间不做任何操作,完全静置手机),长时间卡顿后,第二个设备的数据才继续往下发送; 2、出现卡顿时,小程序的wx.writeBLECharacteristicValue接口,完全不执行任何回调,success、fail、complete三个回调都不执行,超过1分钟后,才恢复正常,没有任何报错,而是按照代码逻辑继续往下; 3、以上的操作如果设备过多,则出现卡顿更为严重。 请问官方的技术团队,小程序BLE主机,多连接从设备,保持连接并且下发数据,技术上是否支持?是否有相应的前提条件约束?如果说不能过于频繁调用wx.writeBLECharacteristicValue接口下发,那么应该做什么样的时间间隔更稳妥?