Saltar al contenido principal

Contrato de ubicación de Driver App

La ubicación de Driver App no es una sola capacidad. Incluye recopilación del dispositivo, lecturas de un solo uso, seguimientos, líneas de ruta en memoria, presentación en mapas, publicación en primer plano, publicación del proveedor en segundo plano, ubicación incluida en estado, almacenamiento/emisión/historial del servidor, validación, política de simulación y retención.

Cada vía tiene permisos, validaciones y efectos de servidor independientes. Una comprobación correcta del cliente no confirma que la ubicación sea reciente o confiable, ni que el servidor la haya guardado, emitido, compartido o retenido.

Disponibilidad​

El trabajo de ubicación depende de permisos efectivos de plataforma, identidad autenticada, configuración de proyecto/estado, ciclo de vida, disponibilidad del usuario, montaje de mapa/detalle, disponibilidad del proveedor y conectividad. Varios componentes inician una lectura única o seguimiento al montarse, antes de que Driver pulse un control de ubicación o estado.

Requisitos previos​

  • Aprobación del propósito de producto/privacidad y de recopilación mínima para cada vía.
  • Revisión de permisos efectivos y ciclo de vida en iOS/Android.
  • Generación actual de cuenta/sesión y autorización de solicitudes.
  • Origen, marca temporal, precisión y procedencia de simulación explícitos para las coordenadas.
  • Política del servidor de normalización, vigencia, simulación, almacenamiento, emisión de disponibilidad, uso compartido con cliente, historial de pedido y retención.
  • Limpieza determinista de seguimientos/listeners/proveedores y cero registros sensibles.

Límites de responsabilidad​

VíaResponsabilidad del clienteLímite
Lectura únicaPedir al proveedor del dispositivo la posición actual de alta precisión, con entradas de tiempo de espera/caché.La coordenada/marca temporal/simulación devuelta no es inherentemente confiable.
Seguimiento en primer planoIniciar/detener el seguimiento de posición y actualizar el estado local actual/de ruta.Varios inicios pueden sobrescribir un ID de seguimiento y dejar activo uno anterior.
Montaje del mapaLeer/seguir ubicación y publicar actualizaciones de coordenadas distintas de cero mediante el SDK del cliente.El montaje/enfoque produce efectos; la forma de guardado no incluye metadatos de vigencia/simulación.
Detalle/formulario de entregaIniciar seguimiento, validar estados seleccionados y opcionalmente incluir ubicación en la solicitud de estado.La validación del cliente no es confianza del servidor ni aceptación de estado.
Actualización directa de RootLeer la ubicación del dispositivo y publicar con el contexto Driver autenticado.AppState/callbacks de toque/proveedor pueden activarla.
Proveedor de segundo planoConfigurar/iniciar/detener seguimiento y callbacks HTTP según el estado de permiso/token/usuario/idioma.Configuración/inicio/callback/limpieza son etapas distintas y la limpieza está bloqueada actualmente.
APIAutorizar/normalizar/comprobar simulación/guardar/emitir/historial según la vía/configuración.Las reglas y efectos pueden variar según el endpoint y la configuración.

Entradas y resultados​

Entrada/estadoResultado posibleLímite crítico
Coordenadas del dispositivoLatitud/longitud/velocidad simulada locales y, a veces, marca temporalRoot y los hooks de UI generan distintos formatos de marca temporal.
Evento de seguimientoActualizar la ubicación actual y añadir una línea de ruta en memoriaNo se demuestra la precisión/procedencia/retención ni la limpieza de seguimientos duplicados.
Actualización de ubicación del mapaGuardado en SDK con objeto de coordenadasEste guardado no incluye marca temporal ni metadatos de simulación.
Publicación directa/en segundo planoSolicitud autenticada de ubicación o HTTP del proveedorAlmacenamiento/emisión/historial y comprobación de simulación/vigencia varían según la ruta del servidor.
Ubicación de estadoUbicación incluida con el estado destinoPuede omitir comprobaciones separadas de marca temporal/simulación; el fallo del historial no tiene que cancelar el estado.
Validación del clienteProblemas de dato ausente/obsoleto/destino/distancia o validación local correctaLa validación local no decide si la precisión, simulación o ubicación son confiables para el servidor.
Respuesta no autorizada del proveedorIntención de cierre de sesión localLa limpieza de sesión/proveedor/API es parcial.

Seguridad y privacidad​

  • No incluyas coordenadas precisas, líneas de ruta, respuestas HTTP/de proveedor sin procesar, tokens, direcciones ni datos de cuenta/pedido en registros compartidos o informes públicos.
  • Trata por separado y con aprobación la recopilación, almacenamiento actual/anterior, emisión de disponibilidad, uso compartido con clientes, efectos de pedido, historial y retención.
  • Rechaza marcas temporales obsoletas/desconocidas, precisión insuficiente y ubicaciones simuladas no confiables antes de usar las coordenadas para una decisión.
  • Vincula seguimientos/callbacks/resultados tardíos a la cuenta y ciclo de vida de pantalla actuales.
  • Un simulador no es hermético y la ubicación simulada no es segura automáticamente.

Límites y estados de fallo​

EstadoSignificadoRespuesta de mantenimiento
Permiso ausente/denegadoEl cliente/proveedor no puede usar la vía prevista.No eludas el control; usa el contrato de permisos.
Coordenada cero/ausenteNormalización del hook o ningún resultado utilizable.No publiques ni deduzcas la ubicación.
Marca temporal ausenteAlgunos hooks/rutas de guardado no la incluyen.No la llames reciente.
Indicador de simulaciónAlgunas rutas de dispositivo/proveedor lo reciben.La validación del cliente no lo rechaza; se requiere política del servidor.
Se inició seguimiento sin estar enfocadoEl efecto de montaje del mapa puede iniciarlo antes del enfoque.Corrige/prueba la propiedad y la limpieza.
Varios seguimientos iniciadosSe puede sobrescribir el único ID guardado.Demuestra que se cancelan todos los seguimientos.
El estado tiene éxito, pero falla el historialEfecto parcial C08.Nunca equipares la escritura principal al historial durable.
HTTP del proveedor no autorizadoIntención de cierre de sesión local.Concilia limpieza de ubicación/sesión/proveedor.

Diagnóstico​

SíntomaInspeccionarDiagnóstico seguro
Se actualiza la ubicación antes de enfocar el mapaEfectos de montaje/enfoque y recuento de seguimientosUsa solo el registro interceptado del proveedor/listener.
Actualizaciones duplicadasVarias llamadas de seguimiento, ID guardado y limpiezaCuenta altas/bajas de seguimiento sintéticas.
El cliente dice que es válida, pero la ubicación es dudosaMarca temporal, precisión, procedencia de simulación, destino y política del servidorDetente antes de cambiar el estado/publicar.
Difieren la ubicación del mapa y la de segundo planoFormatos de hooks, caché/tiempo de espera, proveedor, ciclo de vida y vía de publicaciónNo concilies usando coordenadas reales.
Cambió el estado sin el historial esperadoC05/C08 principal frente a acciones posteriores de historial/almacenamiento/emisiónEscala a quien sea responsable de API/seguridad; no repitas.

Vuelve a revisar cuando cambien permisos, formato de resultado del hook, marca temporal/simulación/precisión, limpieza del seguimiento/enfoque, guardado de mapa, validación de estado, publicación Root/en segundo plano, almacenamiento/emisión/historial del servidor o retención.

Guías relacionadas: Permisos de ubicación · Validación de ubicación · Mapa de entregas · Ejecución en segundo plano · Contrato de mapas