我正在开发一个基于Android的应用程序,它正在扫描现有的蓝牙设备。到目前为止,我设法得到设备的名称+信号强度,单位为dBm。这是我的问题。有没有办法只过滤信号最强的设备,换句话说只是为了预览最近的设备?
提前致谢
答案 0 :(得分:0)
我假设你的RSSI值是int
类型,如果是这样,为什么不使用类似下面的东西来确定你的最高值:
int[] rssiValues = {20, 40, 45, 62, 85, 9, 12 };
int highest = rssiValues[0];
for (int index = 1; index < rssiValues.length; index ++) {
if (rssiValues[index] > highest) {
highest = rssiValues [index];
}
}
在此循环结束时,highest
将包含最近的RSSI或蓝牙设备。如果您的设备包含在某个类中,您应该能够修改此代码以比较您的RSSI值。