Saltar al contenido principal

Entender los estados de permisos de ubicación

El código fuente de Customer App contiene controles relacionados con la ubicación y declaraciones nativas, pero eso no establece un único estado actual de permisos ni un mismo flujo en todas las plataformas. El permiso de ubicación, una coordenada recibida, una dirección y el resultado de un comercio son estados distintos.

:::warning La información de ubicación es privada

No incluyas direcciones, coordenadas, texto de búsqueda, registros de permisos, identificadores de dispositivo o cuenta, respuestas de proveedores, claves, capturas de pantalla ni detalles de configuración en documentación o diagnósticos.

:::

Mantener separadas las capas de responsabilidad​

CapaQué representaQué no demuestra
Declaración nativaLa compilación declara una finalidad o capacidad de ubicaciónQue el artefacto instalado coincida, que el sistema operativo haya autorizado el acceso o que haya una solicitud actual
Autorización del sistema operativoLa decisión y el alcance actuales del sistema operativoConsentimiento de la aplicación o del proveedor, una coordenada o disponibilidad duradera
Estado propio de la aplicaciónCarga, inhabilitación, error, aviso, alternativa o cachéQue la decisión del sistema operativo no haya cambiado o que otra superficie coincida
Resultado de ubicación del dispositivoUna coordenada devuelta a una función de retorno nativaPropiedad de la dirección, precisión, vigencia o persistencia del permiso
Resultado de geocodificación inversaUn proveedor tradujo una coordenada a datos de direcciónQue la dirección esté guardada, tenga cobertura de entrega o sean datos actuales confiables
Visualización de mapa o ubicaciónUna capa del mapa o cámara usó una coordenada suministrada o guardada en cachéQue se haya solicitado explícitamente un permiso o aceptado una búsqueda de comercios
Ubicación guardada o del pedidoEstado de dirección administrado por las superficies de cuenta, pedido o carritoPermiso del dispositivo, posición actual del dispositivo o disponibilidad del proveedor

Las declaraciones nativas son distintas de la autorización durante la ejecución. Inspeccionar el código fuente tampoco demuestra que iOS y Android soliciten, denieguen, limiten, reintenten o regresen de Ajustes de la misma manera.

Acción explícita de ubicación​

El formulario de dirección fijado define un control de ubicación explícito. Al activarlo, entra en estado de carga y delega en una función de retorno nativa para obtener la ubicación. Luego, una coordenada correcta puede pasar por un proveedor de geocodificación inversa antes de que el formulario reciba una candidata de dirección.

Si la función de ubicación nativa informa que se denegó el acceso, el formulario puede mostrar un mensaje de denegación. El control puede recordar esa denegación durante el tiempo en que permanece montado y mostrar el mensaje de nuevo sin realizar otra llamada nativa. Este es estado local de la aplicación, no una comprobación nueva de la autorización del sistema operativo.

El código fuente no define una acción de Ajustes específica para la ubicación ni un contrato completo, propiedad de la aplicación, para solicitar, comprobar o explicar el permiso. No prometas que aparecerá una solicitud, que se abrirán los Ajustes ni que un nuevo intento tendrá éxito.

Límites de los mapas y del descubrimiento pasivo​

Otras superficies de descubrimiento fijadas pueden solicitar una coordenada al módulo de ubicación nativa al montarse o cuando cambia el estado de la ubicación para pedidos. El mapa también puede solicitar que su capa nativa muestre la ubicación del usuario y ofrecer un control para volver a centrarlo. Son acciones distintas de la acción explícita del formulario de dirección.

Que aparezca un control para volver a centrar no demuestra que haya una coordenada del dispositivo. Mostrar la ubicación del usuario, un aviso de que está lejos o una cámara desplazada tampoco demuestra que la aplicación haya solicitado deliberadamente permiso, que la autorización siga vigente ni que se haya guardado una ubicación.

Estados denegados, no disponibles y desconocidos​

EstadoInterpretación segura
Control inactivoNo se ha establecido una acción actual.
CargaHay una función nativa o un resultado del proveedor pendiente; no se ha demostrado la autorización.
Función de retorno denegadaUn intento nativo informó que se denegó; el alcance del sistema operativo y la elegibilidad futura siguen bajo control de la plataforma.
Aplicación inhabilitada localmenteEste control montado no inicia otro intento nativo; el estado del sistema operativo puede ser distinto.
Error nativoLa ubicación falló por un motivo de plataforma no especificado.
Error del proveedor o sin resultadoLa geocodificación inversa no produjo una candidata de dirección aceptada.
Se devolvió una coordenadaUna función de retorno produjo datos de ubicación; la dirección y la persistencia siguen pendientes.
Cambió el ciclo de vida de la aplicaciónLas funciones de retorno anteriores y el estado en caché pueden estar obsoletos.
Cambió la cuenta, el proyecto o la sesiónLas coordenadas, los proveedores y las respuestas anteriores no deben cruzar generaciones de propiedad.

No actives repetidamente la ubicación, abras Ajustes, alternes la autorización ni muevas el mapa para diagnosticar un resultado desconocido. Usa una alternativa manual o de dirección guardada cuando la superficie actual la ofrezca y conserva como desconocido cualquier estado sin resolver.

Límite de minimización de datos y proveedores​

La ubicación puede pasar por varios destinos independientes: el módulo de ubicación nativa, el SDK de mapas, el geocodificador, el autocompletado o la búsqueda de comercios. Un flujo aceptado debe aclarar cada destino y finalidad, reducir al mínimo la precisión de las coordenadas y los datos de consulta, evitar solicitudes pasivas o duplicadas, ocultar datos identificables en la telemetría y rechazar funciones de retorno obsoletas tras cambios de cuenta, proyecto, sesión, permiso, consentimiento o superficie.

Una coordenada, respuesta de proveedor, dirección mostrada, resultado de mapa o navegación correcta no demuestran consentimiento para el proveedor, propiedad de la dirección, cobertura, estado guardado ni confirmación del carrito.

Accesibilidad y solución segura de problemas​

Los controles de ubicación y sus mensajes pueden variar según la plataforma y la versión de la app. Si la ubicación no está disponible, comprueba los permisos del dispositivo o elige una ubicación manual cuando esa alternativa aparezca. También puedes usar VoiceOver o TalkBack según las opciones de accesibilidad de tu dispositivo.

Si la ubicación sigue sin estar disponible, revisa los permisos del dispositivo y la conexión. Evita compartir tu dirección o coordenadas al pedir ayuda; basta con indicar que la función de ubicación no está disponible.

Guías relacionadas: Entender los estados de selección de ubicación · Añadir o editar una dirección · Entender los estados de descubrimiento en el mapa · Comportamiento de la plataforma y accesibilidad · Privacidad y consentimiento