Я пытаюсь обнаружить изменения мощности сигнала в соединении Wi-Fi. Я не понимаю, какой метод мне следует использовать в своем BroadcastReceiver. В чем разница между использованием getConnectionInfo () и getScanResults () - из которого затем я могу использовать соответствующий метод для получения значения rssi?
Например: если я использую getConnectionInfo (), то позже я использую getRssi (). Или я мог бы использовать getScanResults () и свойство "level".
Я показываю их значения с помощью Toast, и это не так. t всегда показывают одинаковые значения. Когда соединение Wi-Fi потеряно, getConnectionInfo (). GetRssi () показывает -200, в то время как result.level все еще показывает свое предыдущее значение.
Есть мысли? Спасибо!
String netSSID = wifi.wifiMgr.getConnectionInfo().getSSID();
int netRSSI = wifi.wifiMgr.getConnectionInfo().getRssi();
List<ScanResult> results = wifi.wifiMgr.getScanResults();
for (ScanResult result : results) {
if (result.SSID.equalsIgnoreCase(netSSID)) {
anothernetRSSI = result.level;
}
}