在我的一个应用程序中,我需要显示所有已配对的Wi-Fi和蓝牙设备以及它们的信号强度。对于Wi-Fi,我可以显示信号强度(RSSI)。但是我在蓝牙方面遇到了问题。我搜索了一些适合这个任务的方法,发现了一个方法: intent.getShortExtra(BluetoothDevice.EXTRA_RSSI, Short.MIN_VALUE); 但它只显示了与我的手机没有配对的新设备RSSI。有没有什么想法可以获取所有蓝牙设备的RSSI?
对于蓝牙RSSI,您可以读取已连接设备的RSSI,或执行蓝牙发现以检查附近设备的RSSI。基本上,蓝牙发现是向范围内所有站点广播以响应返回。当每个设备响应时,Android会触发一个ACTION_FOUND意图。在此意图中,您可以使用getExtra EXTRA_RSSI来获取RSSI。请注意,并非所有蓝牙硬件都支持RSSI。同时相关:关于Android蓝牙RSSI的Android IRC Office Hours问题