我目前正在为Android开发蓝牙低功耗接近配置文件,我偶然发现了有关RSSI的问题。
为了使接近配置文件工作,我必须每隔短时间内接收已连接设备的RSSI数据。
当我做一些研究时,我了解在设备发现过程中可以获得蓝牙RSSI。这对我不起作用,因为从设备在连接后不会做广告。
另一种方式是挖掘人机交互层面并使用BlueZ。这似乎是相当低的水平。有没有人有这方面的经验?
有没有人在Android上看到过邻近资料?
答案 0 :(得分:1)
您可以获取数据&设备扫描中的RSSI回叫。请参阅the BluetoothLeGatt sample。
答案 1 :(得分:1)
连接后一段时间后可以重复使用readRemoteRssi()方法。但它不会很好。因为挂起标志错误。另一个approch是你可以启动和停止blescan并获得扫描设备的rssi值,这将是更好的方法因为在nexus 7 2013设备和一些三星设备不是过滤器设备,它将返回ble设备。
答案 2 :(得分:0)
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.