Analisando propostas

Desarrollo de Sistema de Geolocalización Precisa para Aplicaciones de Taxistas (Android e Ios)

Publicado em 13 de Agosto de 2026 dias na TI e Programação

Sobre este projeto

Aberto

Se requiere el desarrollo de un sistema de geolocalización avanzado para mejorar la precisión y fiabilidad de la ubicación de los taxistas en las aplicaciones móviles de Android e iOS. El objetivo principal es eliminar la visualización de coordenadas antiguas como si fueran actuales y establecer una única fuente de ubicación para cada plataforma.

El proyecto implica:

1.  **Desarrollo de Aplicaciones Móviles (Android e iOS)**:
    *  Las pantallas de las aplicaciones no deben iniciar sus propias suscripciones GPS; solo deben observar la última ubicación disponible.
    *  Separar la captura de datos gps del envío de peticiones http.
    *  Implementar una lógica "latest wins" para la conservación de ubicaciones: si llegan varias posiciones mientras se está enviando una, solo la más reciente debe conservarse, sin acumular ubicaciones.

2.  **Desarrollo de Nuevo Endpoint Backend**:
    *  Crear un nuevo endpoint POST /v1/driver/location para recibir las actualizaciones de ubicación.
    *  El endpoint GET actual se mantendrá temporalmente durante la migración de las aplicaciones.
    *  El endpoint debe recibir los siguientes campos como mínimo:
        *  taxi_id
        *  location_session_id
        *  sequence
        *  fix_id
        *  captured_at
        *  latitude y longitude
        *  precisión horizontal
        *  velocidad y precisión
        *  dirección
        *  proveedor GPS
        *  indicador de ubicación simulada

3.  **Lógica de Validación y Almacenamiento Backend**:
    *  El backend debe aceptar una posición solamente si:
        *  El taxi está en uso.
        *  Pertenece al conductor autenticado.
        *  Es su taxi activo.
        *  La sesión coincide con la sesión actual.
        *  La secuencia es superior a la última aceptada.
        *  Las coordenadas y el timestamp son válidos.
    *  Una petición antigua nunca puede sobrescribir una posición nueva, aunque llegue más tarde. Esta comprobación debe realizarse de forma atómica en base de datos.
    *  Al cambiar de conductor, taxi o jornada, debe comenzar una nueva sesión de ubicación e invalidarse la posición del conductor anterior.
    *  El nuevo endpoint debe ser ligero, enfocado únicamente en validar y guardar la posición. Tareas pesadas como la llegada al origen, paradas, métricas, notificaciones, etc., Deben ejecutarse mediante eventos o jobs asíncronos.

4.  **Almacenamiento de Datos de Ubicación**:
    *  Guardar separadamente la última lectura recibida, la última lectura usable, la última lectura válida para asignación, la hora real de captura, la precisión y el estado (fresh, degraded o lost).

5.  **Frecuencias de Actualización Objetivo**:
    *  Taxi en movimiento o camino al origen: cada 3–5 segundos.
    *  Taxi libre moviéndose: cada 5 segundos.
    *  Taxi parado: cada 20–30 segundos.
    *  Envío inmediato al moverse unos 10–15 metros.
    *  Timeout del envío: 5–8 segundos.

Categoria TI e Programação
Subcategoria Programação de Apps para Android, iOS e outros
Qual é o alcance do projeto? Criar um novo aplicativo

Duração do projeto Não estabelecido

Habilidades necessárias

Outro projetos publicados por K. H. L.