В чем смысл Rssi в андроиде WifiManager
Я пытаюсь получить уровень сигнала текущего соединения Wi-Fi, используяgetRssi()
private void checkWifi(){
ConnectivityManager cm = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo Info = cm.getActiveNetworkInfo();
if (Info == null || !Info.isConnectedOrConnecting()) {
Log.i("WIFI CONNECTION", "No connection");
} else {
int netType = Info.getType();
int netSubtype = Info.getSubtype();
if (netType == ConnectivityManager.TYPE_WIFI) {
wifiManager = (WifiManager)getApplicationContext().getSystemService(Context.WIFI_SERVICE);
int linkSpeed = wifiManager.getConnectionInfo().getLinkSpeed();
int rssi = wifiManager.getConnectionInfo().getRssi();
Log.i("WIFI CONNECTION", "Wifi connection speed: "+linkSpeed + " rssi: "+rssi);
//Need to get wifi strength
}
}
}
дело в том, что я получаю числа вроде -35 или -47 и т. д.Я не понимаю их значения .. Я посмотрел на документацию для Android и все это заявляет:
public int getRssi ()
С тех пор: Уровень API 1 Возвращает индикатор уровня принятого сигнала текущей сети 802.11.
Это не нормализовано, но должно быть!
Возвращает RSSI, в диапазоне ??? чтобы ???
может кто-нибудь объяснить, какнормализовать» или понять эти результаты?