разница между getConnectionInfo () и getScanResults () для обнаружения изменений мощности сигнала

Я пытаюсь обнаружить изменения мощности сигнала в соединении 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;
    }
}
6
задан springrolls 8 December 2010 в 08:49
поделиться