onBluetoothDeviceFound中advertisData数据问题
发布于 5 年前 作者 laixia 10406 次浏览 来自 问答

onBluetoothDeviceFound中返回的advertisData是一个完整的蓝牙广播报文吗?是否包含:|前导|接入地址|报头|长度|广播数据|校验| 这几个部分,还是只包含“广播数据”,有相关解析的说明吗?

5 回复

在真机测试时,发现android和IOS的数据都不一样,都不知道咋解了,你们那边有什么规则吗?其实我是想从这个字段中解出这个蓝牙设备的类型,例如:手机,耳机,打印机,手表等

是画红线框的这块吗?还是整个这个串?

安卓目前比iOS的advertisData的头部少了前两个字节(companyId),6.5.13修复。

advertisData是用 arrayBufferToBase64 解的么?

不同蓝牙设备这里的广播包都不大一样,是厂商自定义的,怎么能够接触蓝牙设备的类型呢?

红圈,前两个字节是companyid

透传了系统返回蓝牙广播数据中的 manufactureData,可参照iOS系统接口说明

https://developer.apple.com/documentation/corebluetooth/cbadvertisementdatamanufacturerdatakey

安卓同理

回到顶部