我試圖使用Wifimanager來計算在掃描期間找到的接入點的信號電平。WifiManager.calculateSignalLevel問題(RSSI,5)
我使用下面的方法:
WifiManager.calculateSignalLevel(int, int)
但它似乎總是返回相同的INT無論RSSI水平是什麼。
這是我的代碼:
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));
}
測井輸出1對於所有的測試案例calculateQoS(INT)。
我在這裏錯過了一些簡單的東西嗎?爲什麼SignalLevel總是1?
謝謝你這個答案特別是對於實施的代碼。根據引用問題(它仍然是今天開放的),所有numLevels超過45的值都會導致除以零。 – Ridcully 2011-02-26 14:31:30