¿Cómo medir la intensidad de la señal del GPS en Android?

La pregunta es tan simple como el título: ¿Cómo medir la potencia de la señal GPS?

¿Estás seguro de que te refieres a la fuerza de la señal frente a la precisión? ¿De qué sirve la potencia de la señal? Como la posición del GPS se determina a través de muchos satélites, no tiene “una” intensidad de señal.

Suponiendo que realmente se GpsStatus la GpsStatus la señal, puede obtener el GpsStatus través de LocationManager.getGpsStatus() , y eso le da una lista de satélites a través de getSatellites() ‘, y cada uno de ellos tiene una relación señal / ruido ( getSnr() ).

Suponiendo que te refieras a la precisión, prueba Location.getAccuracy() .

Puede leer la intensidad de la señal en el mensaje MNEA GSV en SNR-Signal to Noise Ratio.

La fuerza de la señal es MUY importante. Demasiado débil de una señal y el receptor no puede rastrearlos. Necesita varios satélites “fuertes” para posicionarse, no solo uno.

Los receptores más viejos no podían rastrear en árboles o dentro de edificios. Los receptores modernos son mucho más sensibles.

Es muy difícil medir el nivel de señal de un satélite gps sin equipo de prueba muy costoso (analizador de espectro o receptor gps especializado). No hay herramientas disponibles comercialmente para hacer esto.

¿Por qué querrías hacer esto, de todos modos? El nivel de la señal es bastante irrelevante para determinar la posición.