首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何获取蓝牙低功耗设备的RSSI值?

如何获取蓝牙低功耗设备的RSSI值?
EN

Stack Overflow用户
提问于 2015-03-31 17:56:04
回答 1查看 18.6K关注 0票数 7

我是android编程新手,正在尝试从BLE设备获取RSSI值用于距离测量。我可以扫描并获取设备的名称和mac地址,但我尝试了代码来获取rssi,但无法获得有用的结果,我也使用android开发人员网站上的示例。有人能给我这样做的正确代码吗??

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-03-31 18:07:03

this.There的两种解决方案是一种不同的方法,一种可以用于4.0和5.0设备来搜索/扫描BLE设备。您没有提到您正在使用哪个解决方案,因此添加了下面两个解决方案。

1)从Android 4.4 +到5.0,需要通过BluetoothAdapter's startLEScan方法启动LE扫描,给出下面的RSSI值回调。请参见方法签名。

代码语言:javascript
复制
onLeScan(BluetoothDevice device, int rssi, byte[] scanRecord)

//上面的第二个参数是RSSI值。

2)对于安卓5.0+设备,必须通过BluetoothLeScanner类的startScan方法开始扫描,如下所示

代码语言:javascript
复制
getBluetoothLeScanner().startScan

它有回调onScanResult来通知新扫描的设备,你可以使用下面的代码来获取rssi。

代码语言:javascript
复制
public void onScanResult(int callbackType, ScanResult result) {
final int rssi = result.getRssi(); //RSSI value
票数 16
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29365737

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档