在我的一个应用程序中,我需要显示与手机配对的所有wi-fi和Bluetooth设备及其信号强度.使用wi-fi,我可以显示信号强度(RSSI).但是我的蓝牙有问题.我搜索了一些适合此任务的方法;我发现了一种方法:
intent.getShortExtra(BluetoothDevice.EXTRA_RSSI, Short.MIN_VALUE);
但是它仅显示未与我的手机配对的新设备RSSI.是否有获取所有蓝牙设备RSSI的想法?
解决方法:
对于蓝牙RSSI,您可以阅读所连接设备的RSSI,或执行蓝牙发现以检查附近设备的RSSI.
基本上,蓝牙发现是向范围内的所有电台广播以进行响应.随着每个设备的响应,Android会触发ACTION_FOUND意图.在此意图内,您可以获取Extra EXTRA_RSSI以获取RSSI.
请注意,并非所有的蓝牙硬件都支持RSSI.
还相关:Android IRC Office Hours Question About Android Bluetooth RSSI