正在读取Android中BLE接近配置文件的蓝牙RSSI



我目前正在为Android开发蓝牙低能耗接近配置文件,我偶然发现了一个关于RSSI的问题。

为了使接近配置文件工作,我必须在短时间内接收已连接设备的RSSI数据。

由于我做了一些研究,我知道在设备发现过程中获得蓝牙RSSI是可能的。这对我来说不起作用,因为从属设备在连接后不会做广告。

另一种方法是深入到HCI级别并使用BlueZ。这似乎是相当低的水平。有人有这方面的经验吗?

有人见过在安卓系统上开发的近程配置文件吗?

连接一段时间后,可以重复使用readRemoteRssi()方法。但它不会很好地工作。由于挂起的标志错误。另一种方法是,你可以启动和停止blescan,并获得扫描设备的rssi值,这将是更好的方法,因为在nexus 7 2013设备和一些三星设备不是可过滤设备,它将返回可过滤设备。

您可以获取数据&设备扫描回调中的RSSI。请参阅BluetoothLeGatt示例。

final Runnable runnable = new Runnable() {  
    @Override
    public void run() {
        // TODO Auto-generated method stub
        mBluetoothLeService.readRemoteRssi();
        mHandler.postDelayed(this, 1000);
    }
};
and add mHandler.postDelayed(runnable, 1000); Should work.

最新更新