2012-10-04 71 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:由遠程設備提供的廣告記錄的內容。