4 votos

Rango de RSSI para los iconos WiFi

¿Cuál es el rango de RSSI para el icono indicador de WiFi en la barra de notificaciones?

6voto

David Negron Puntos 971

No he mirado versiones anteriores, pero aquí hay información precisa a partir de Android 7.1.2.

El código que realiza la transformación de RSSI a "nivel" de señal se encuentra en el WifiManager.calculateSignalLevel método:

public static int calculateSignalLevel(int rssi, int numLevels) {
    if (rssi <= MIN_RSSI) {
        return 0;
    } else if (rssi >= MAX_RSSI) {
        return numLevels - 1;
    } else {
        float inputRange = (MAX_RSSI - MIN_RSSI);
        float outputRange = (numLevels - 1);
        return (int)((float)(rssi - MIN_RSSI) * outputRange / inputRange);
    }
}

...donde MIN_RSSI es -100 y MAX_RSSI es -55 ( fuente ). El rango de entrada es "dinámico" en el sentido de que se basa en cuántos archivos de recursos están disponibles para el icono de WiFi, pero en AOSP este valor será 5 porque tiene iconos para 0-4 barras. Usando la lógica y los valores anteriores, los rangos son aproximadamente:

  • -55 o superior: 4 bares
  • De -56 a -66: 3 bares
  • -67 a -77: 2 bares
  • -78 a -88: 1 bar
  • -89 o menos: 0 bares

PreguntAndroid.com

PreguntAndroid es una comunidad de usuarios de Android en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X