Ich versuche, mit dem Wifimanager den Signalpegel der während eines Scans gefundenen Access Points zu berechnen.
Ich verwende die folgende Methode:
WifiManager.calculateSignalLevel(int, int)
Aber es scheint immer den gleichen Wert zu liefern, egal wie hoch der RSSI-Wert ist.
Hier ist mein Code:
public int calculateQoS(int aRSSI){
signalLevel = WifiManager.calculateSignalLevel(RSSI, 5);
return signalLevel;
}
public void testCalculateQoS(){
Log.d("signal", "signal = : "
+ connMonitor.calculateQoS(-44)
+ " " + connMonitor.calculateQoS(-80)
+ " " + connMonitor.calculateQoS(-120)
+ " " + connMonitor.calculateQoS(-20));
}
Die Protokollierung ergibt 1 für alle Testfälle für calculateQoS(int).
Übersehe ich hier etwas Einfaches? Warum ist der SignalLevel immer 1?