Compartir
Portada de BrújulAPP: brújula, altitud y coordenadas para Android
Logo de BrújulAPP: brújula, altitud y coordenadas para AndroidProyecto android · flutterdart

BrújulAPP: brújula, altitud y coordenadas para Android

Brújula moderna con altitud y coordenadas en tiempo real.

2 feb 20263 minde lectura
Tamaño
29 MB
Android
5.0+
Descargas
50+
Stack
Flutter
año
2026
estado
Online

Qué es BrújulAPP

BrújulAPP, disponible en Google Play, es una brújula para Android que reúne en una sola pantalla el rumbo, la altitud, las coordenadas, la dirección postal del punto en el que estás y las horas de salida y puesta del sol. Todo va sobre una esfera animada con fondo de cielo y tarjetas translúcidas, en tema oscuro y con el color de acento que elijas.

Está hecha en Flutter y Dart, con un pequeño canal nativo en Kotlin para hablar con el barómetro. Tocando la tarjeta superior se abre un panel con el detalle (velocidad, presión, altitud barométrica) y la tarjeta de coordenadas lleva un minimapa que se amplía al tocarlo.

Brújula fluida

La esfera gira siempre por el camino corto con una animación suave, y cada punto cardinal se ilumina con su color al apuntarle.

Altitud y velocidad

Altitud y velocidad salen del GPS, en metros o pies y en km/h o mph según las unidades que elijas en los ajustes.

Cinco formatos

Coordenadas en grados decimales, grados y minutos, DMS, UTM o MGRS, con conversión propia y un botón para copiarlas.

Mapa con tres capas

Mapa integrado con OpenStreetMap, OpenTopoMap para el relieve o un estilo oscuro, con opacidad y color del pin ajustables.

Salida y puesta del sol

Las horas de amanecer y atardecer se calculan en el propio móvil a partir de tus coordenadas, sin consultar ningún servicio.

A tu estilo

Seis estilos de esfera, tres de aguja y un color de acento que tiñe toda la app. Los ajustes se guardan entre sesiones.

Cómo funciona por dentro

El rumbo llega del plugin flutter_compass como un flujo de lecturas. Pasarlas tal cual a la aguja da un salto feo al cruzar el norte: de 359° a 1° la animación da la vuelta entera. Por eso cada lectura se convierte en un giro relativo, normalizado entre −180° y 180°, que se suma a la rotación acumulada. Así la esfera gira siempre por el camino corto, con una animación de 300 ms.

La posición viene de geolocator en modo flujo, con un filtro de distancia configurable (1 metro por defecto) y la precisión máxima si activas el «sensor avanzado». De cada posición salen la altitud, la velocidad, la dirección por geocodificación inversa y las horas de sol, que calculo con el algoritmo clásico de efemérides del Almanac for Computers en unas 50 líneas de Dart. Las conversiones a UTM y MGRS también son código propio.

Decisiones de móvil real

Algunos Xiaomi aplican un escalado de fuente tan agresivo que desmontaba las tarjetas. La app fija el factor de escala del texto a 1 y la interfaz se ve igual en cualquier teléfono; a cambio, ignora el tamaño de letra que hayas elegido en accesibilidad. Con la misma idea, la brújula tiene un tamaño fijo en todos los dispositivos y la app está bloqueada en vertical.

El mapa usa flutter_map con teselas de OpenStreetMap, OpenTopoMap o el estilo oscuro de Stadia Maps. Los ajustes (unidades, formato de coordenadas, tipo de mapa, estilo de la esfera) se guardan en las preferencias del sistema, y si sales de la pantalla de ajustes sin guardar, la app te pregunta antes de descartar los cambios.

El barómetro, a medias

La app intenta leer la presión a través de un canal nativo en Kotlin y convertirla en altitud con la fórmula barométrica estándar. Pero hoy ese canal devuelve el rango máximo del sensor en lugar de la presión medida, así que la presión y la altitud barométrica del panel de detalle no son fiables. El propio código lo deja marcado como provisional. La altitud buena es la del GPS.

Estado real

BrújulAPP salió en poco más de un mes: el primer commit es del 9 de junio de 2025 y el último del 14 de julio, con 171 commits por el camino. Son unas 4.600 líneas de Dart en 32 ficheros y todavía no tiene tests automatizados. Tampoco guarda puntos favoritos; los favoritos sobre un mapa sí los resolví en mi otra app Android, hecha en Java: GasolAPP.

Capturas de Google Play

Brújula con rumbo, altitud y coordenadas

Brújula con rumbo, altitud y coordenadas

Brújula reactiva y mapa en movimiento

Brújula reactiva y mapa en movimiento

Información detallada

Información detallada

Apariencia: colores y estilos de la esfera

Apariencia: colores y estilos de la esfera

Ajustes y preferencias

Ajustes y preferencias

Compatibilidad

7/8 ✓
DispositivoVersiónEstadoTamaño
Tablet Xiaomi1.1.1Funciona29 MB
Redmi 12 5G1.1.1Funciona29 MB
Xiaomi Mi Note 101.1.1Funciona29 MB
Samsung Galaxy Watch7-No funciona-
Pixel 81.1.1Funciona29 MB
SPRD Sp7731e_1h10_native1.1.1Funciona25 MB
Google Sdk_gphone64_x86_641.1.1Funciona30 MB
ADT-3 ADT-31.1.1Funciona26 MB

Ficha

Versión: 1.1.1 (build 15) Última actualización: 17 jul 2025 Tamaño: 29 MB Requisitos: Android 5.0 o superior Clasificación: PEGI 3 Paquete: com.drago.altitudecompass