解决了吗,我这边也是解析不了0x16类型
蓝牙开发中,对BLE广播包数据的获取以及解析?[图片][图片]按官方DEMO片段调用wx.onBluetoothDeviceFound测试:以测试收到的原始数据为基础,解析0x01 0x03 0x09等数据成功。 0xff数值(advertisData)返回为空?请问这个是怎么回事。 还有测试0x16 (serviceData)数据值返回也是为空。请问广 播中的 DATA数值需要怎么获取?
01-16大佬 addService什么意思,和createBLEPeripheralServer有什么区别?
iOS设备BLEPeripheralServer.addService一直返回1509000错误小程序 iOS系统 BLEPeripheralServer.addService 返回 {errno: 1509000, errMsg: "addBLEPeripheralService:ok"}; 安卓系统返回 {errno: 0,errCode: 0, errMsg: "addBLEPeripheralService:ok"} 导致无法连接BLE蓝牙设备 iOS版本:15.4.1 型号:iPhone 6s Plus 示例代码: const baseServiceId = '07CEDB7C-0A62-A8D6-57E2-C9BB0E4EB60B' const baseCharacteristicId = '07CEDB7C-0A62-A8D6-57E2-C9BB0E4EB60C' openBluetoothAdapter() { wx.openBluetoothAdapter({ mode: 'peripheral', success: (res) => { console.log("openBluetoothAdapter(peripheral for iOS):", res); this.createBLEPeripheralServer(); }, fail: (res) => { console.error("openBluetoothAdapter (peripheral for iOS) error:", res) } }) }, createBLEPeripheralServer() { wx.createBLEPeripheralServer({ success: (result) => { console.log('外围Server创建成功', result); if (result.server) { this.addBLEPeripheralServices(result.server) } }, fail: (err) => { console.log('外围Server创建失败', err); } }) }, addBLEPeripheralServices(server) { server.addService({ service: { uuid: baseServiceId, characteristics: [{ uuid: baseCharacteristicId, properties: { writeNoResponse: true, read: true }, permission: { writeable: true, readable: true } }] }, success: (res) => { console.log('添加Service结果', res); if (res.errno == 0) { console.log('添加Service成功'); } else if (res.errno == 1509000) { wx.showToast({ title: "蓝牙设备未知错误", icon: "error" }) } }, fail: (err) => { console.log('添加Service失败', err); } }) }, iOS端创建Service时报1509000错误 [图片]
01-16想要发送0x16类型的广播数据,不知道怎么发,有大佬知道的吗?
蓝牙不可连接广播startAdvertising,怎么携带0x16类型的广播数据?[图片] 在发送广播时怎么同时把指令广播出去?接口中没有相关参数 [图片]
01-12想解析0x16类型的数据应该放在哪个字段中?
获取BLE蓝牙广播数据中advertisData为0的问题?[图片][图片]如上图。明显能解析TYPE 0x01 0x03 0x09类型的数据。而advertisData数据按官方理解,因为“当前蓝牙设备的广播数据段中的 ManufacturerData 数据段。” 理应是0xff厂商数据。 且各BLE广播中此advertisData值都为空。请问这个advertisData值是解析的哪个TYPE值(0x??) ? 小程序能不能像调试助手那样调出原始数据值,由自已来分析广播数据?
01-12解决了吗
蓝牙广播 startAdvertising 广播的数据跟自己拼接的数据有出入?BLEPeripheralServer.startAdvertising想广播的数据:data='1a:11:07:00:53:54:5E:C0:01:00:01:01:00:00:00:00:00:00:00'; 实际广播出来的数据为: [图片] 为什么会多出几个来,后面那个00 00知道了为manufacturerId 前面多出来这几个改怎么去掉呢(包括这个manufacturerId),求告知
01-11