2012-10-04 37 views
5

蓝牙LE设备可以将消息广播到其他设备。该消息包可包括,例如,长度,轮廓,RSSI(信号强度)的信息等。如何在扫描时读取Android中的蓝牙LE广告数据

我怎样才能读取扫描中的Android BLE设备时,这些蓝牙LE广播数据?

+0

U可以理解这样的..蓝牙设备包含一些广告数据的数据包含了MAC-ID,nameand头部分...所以我要读 – vky

+1

你说的是蓝牙低能量的原始数据(SMART)广告数据包或蓝牙BR/EDR寻呼/查询例如扩展查询消息? –

+0

是Pev Iam在谈论包含一些数据的BLE广告数据包.. – vky

回答

4

API级别21+

android.bluetooth.le.ScanCallback,如下回调方法有一个名为结果参数,其中有一个字段称为scanRecord,与应包含由BLE设备发送的广告数据。

void onScanResult (int callbackType, ScanResult result) 

API级别18-20

BluetoothAdapter.LeScanCallback,如下回调方法有一个名为scanRecord参数,其应该包含由BLE设备发送的广告数据。

public abstract void onLeScan (BluetoothDevice device, int rssi, byte[] scanRecord) 

scanRecord:由远程设备提供的广告记录的内容。