Actualmente, el SDK de Navigation solo está disponible para determinados clientes. Comunícate con Ventas para obtener más información.

Referencia de la clase GMSNavigator

Referencia de la clase GMSNavigator

Descripción general

Esta es la clase principal del SDK de Google Navigation para iOS y proporciona métodos para controlar la navegación a un destino y acceder a la información de la ruta y el progreso.

Esta clase no admite la subclasificación.

Esta clase no tiene seguridad en los subprocesos. Se debe llamar a todos los métodos desde el subproceso principal.

Funciones de miembros públicas

(nulo)- addListener:
 Agrega un objeto de escucha.
(BOOL)- removeListener:
 Quita un objeto de escucha.
(nulo)- setDestinations:callback:
 Establece varios destinos para la navegación, lo que anula los destinos configurados previamente.
(nulo)- setDestinations:RoutingOptions:callback:
 Establece varios destinos para la navegación, lo que anula los destinos configurados previamente.
(nulo)- setDestinations:routeToken:callback:
 Establece varios destinos para la navegación mediante un token de ruta a fin de navegar en una ruta calculada previamente.
(nulo)- getRouteInfoForDestination:withRoutingOptions:callback:
 Muestra información de la ruta en función de la estrategia de enrutamiento: la ruta predeterminada mejor o más corta.
(GMSNavigationWaypoint anulable)- continueToNextDestination
 Muestra el primer destino de la lista actual de destinos.
(nulo)- clearDestinations
 Borra todos los destinos establecidos anteriormente y quita del mapa las rutas calculadas.
(NSTimeInterval)- timeToWaypoint:
 Muestra el tiempo estimado para el waypoint determinado, o CLTimeIntervalMax si el waypoint no forma parte de la ruta actual.
(CLLocationDistance)- distanceToWaypoint:
 Muestra la distancia estimada al punto de referencia determinado, o CLLocationDistanceMax si el punto de referencia no forma parte de la ruta actual.
(nulo)- setTransactionIDs:errorHandler:
 Establece y registra en el servidor los ID de transacción en curso que se aplican a los eventos de navegación durante la sesión de navegación actual.

Propiedades

BOOLevitaeHighways
 Si se deben evitar autopistas al generar rutas a destinos.
BOOLevitarpeajes
 Si se deben evitar rutas con peaje cuando se generan rutas hacia destinos.
BOOLevitarderechos
 Si se deben evitar transbordadores al generar rutas hacia destinos
GMSNavigationLicensePlateRestrictionlicensePlateRestriction.
 Establece la restricción de matrícula con el último dígito de la matrícula del conductor actual y el código de país.
BOOLguidanceActive
 Si la guía paso a paso está habilitada actualmente
BOOLstopGuidanceAtArrival
 Si se debe detener la orientación automáticamente cuando se llama a -navigator:didarrivalAtWaypoint:
NSTimeIntervaltimeUpdateThreshold;
 Es el cambio mínimo en el tiempo estimado para el siguiente destino que activará el método a navigator:didUpdateRemainingTime: para que se llame.
CLUbicaciónDistanciadistanceUpdateThreshold
 El cambio mínimo en la distancia estimada al siguiente destino que activará el método navigator:didUpdateRemainingDistance: para que se llame.
NSTimeIntervaltimeToNextDestination.
 Muestra el tiempo estimado para el siguiente destino.
CLUbicaciónDistanciadistanceToNextDestination.
 Muestra la distancia estimada para el siguiente destino.
GMSNavigationDelayCategorydelayCategoryToNextDestination
 Muestra la categoría de retraso al siguiente destino.
GMSRouteLegcurrentRouteLeg
 La etapa actual del viaje.
NSArray< GMSRouteLeg * > * segmentosderuta
 Es un array de segmentos de ruta en el que cada etapa corresponde a un destino establecido.
GMSPathtraveledPath;
 Es la ruta que el dispositivo recorrió desde la última vez que la orientación activa se estableció en SÍ.
GMSNavigationVoiceGuideOrientación por voz
 Determina si se deben habilitar las indicaciones por voz para el tráfico y las alertas paso a paso.
GMSVoiceGuidanceAudioDeviceTypeaudioDeviceType.
 Determina qué guía de voz se reproducirá en los dispositivos de audio.
BOOLvibraciónhabilitada
 Determina si el dispositivo también vibrará cuando se reproduzcan alertas de voz.
BOOLsendsBackgroundNotifications
 Determina si se presentará UILocalNotifications con información de orientación cuando la app esté en segundo plano.
GMSNavigationLightingModesuggestedLightingMode.
 El modo de iluminación sugerido, según la hora del día y la ubicación del dispositivo.
BOOLshouldDisplayPrompts
 Determina si se deben mostrar los mensajes de tráfico, las mejores rutas y los incidentes.
GMSNavigationSpeedAlertOptionsspeedAlertOptions;
 GMSNavigationSpeedAlertOptions para personalizar los umbrales de activación de GMSNavigationSpeedAlertSeverity.

Ten en cuenta que estas no son funciones de los miembros.

typedef void(^ GMSRouteStatusCallback )(GMSRouteStatus routeStatus)
 Se llama cuando se encuentra una ruta desde la ubicación del dispositivo hacia los destinos proporcionados, o no se encuentra por un motivo indicado por RouteStatus.
typedef void(^ GMSRouteInfoCallback )(GMSNavigationRouteInfo *_Nullable routeInfo)
 Se llama cuando se calcula la información de la ruta (ETA y distancia) al punto de referencia proporcionado.
typedef void(^ GMSNavigationTransactionIDErrorHandler )(NSError *error)
 Se llama si falla la configuración de los ID de transacción mediante setTransactionID.

Documentación de la función de miembro

- (void) addListener: (id< GMSNavigatorListener >) objeto de escucha

Agrega un objeto de escucha.

El objeto de escucha se mantiene con una referencia débil.

Parámetros:
objeto de escuchaUn objeto que cumple con el protocolo GMSNavigatorListener.
- (BOOL) removeListener: (id< GMSNavigatorListener >) objeto de escucha

Quita un objeto de escucha.

Parámetros:
objeto de escuchaUn objeto que cumple con el protocolo GMSNavigatorListener.
Muestra:
Muestra YES si se quitó el objeto de escucha. Muestra NO si el objeto no es un objeto de escucha.
- (void) setDestinations: (NSArray< GMSNavigationWaypoint * > *) destinos
devolución de llamada: (GMSRouteStatusCallback). devolución de llamada

Establece varios destinos para la navegación, lo que anula los destinos configurados previamente.

Si se encuentra una ruta desde la ubicación del dispositivo hasta el destino determinado, se llamará a la devolución de llamada proporcionada con GMSRouteStatusOK. Si se configura un nuevo destino antes de que se encuentre una ruta, se cancelará la solicitud y se llamará a la devolución de llamada con GMSRouteStatusCanceled. Si no se puede encontrar una ruta por otro motivo, la devolución de llamada se realizará con el estado de error correspondiente.

La devolución de llamada siempre se enviará de forma asíncrona en la cola principal.

- (void) setDestinations: (NSArray< GMSNavigationWaypoint * > *) destinos
RouteOptions: (GMSNavigationRoutingOptions *) RoutingOptions
devolución de llamada: (GMSRouteStatusCallback). devolución de llamada

Establece varios destinos para la navegación, lo que anula los destinos configurados previamente.

Las rutas que se muestran se calculan con opciones de enrutamiento.

Parámetros:
destinosEs un array de puntos de referencia de destino.
Opciones de enrutamientoLas opciones que influyen en la lógica de enrutamiento (estrategia de enrutamiento)
callbackSe llama cuando se encuentra una ruta desde la ubicación del consumidor hasta los destinos proporcionados, o no se encuentra por un motivo indicado por RouteStatus.
- (void) setDestinations: (NSArray< GMSNavigationWaypoint * > *) destinos
Token de ruta: (NSString *) rutaToken
devolución de llamada: (GMSRouteStatusCallback). devolución de llamada

Establece varios destinos para la navegación mediante un token de ruta a fin de navegar en una ruta calculada previamente.

Las rutas serán las mismas, cambiará el módulo a la ubicación de partida del conductor y a las condiciones de la ruta o el tráfico. Las rerutas seguirán ocurriendo según las opciones de enrutamiento codificadas en el token.

Solo se admiten GMSNavigationTravelModeDriving y GMSNavigationTravelModeTwoWheeler cuando se usa el token de ruta para iniciar una sesión de navegación. Configura travelMode para configurar el medio de transporte. La llamada fallará si el modo de viaje actual no es compatible y se mostrará un GMSRouteStatusTravelModeUnsupported en la devolución de llamada.

Parámetros:
destinosUn array de puntos de referencia de destino debe ser el mismo que los destinos proporcionados a la API de RoutesPreferred para obtener el token de ruta.
Token de rutaUna string de token de ruta que muestra la API de RoutesPreferred. Las opciones de enrutamiento especificadas en la API de RoutesPreferred se codifican en este token de ruta y se usarán para regenerar la ruta procesada previamente o una ruta nueva cuando se produzca el redireccionamiento.
callbackSe llama cuando se encuentra una ruta desde la ubicación del consumidor hasta los destinos proporcionados, o bien por un motivo indicado por RouteStatus.
- (void) getRouteInfoForDestination: (GMSNavigationWaypoint *). destino
withRoutingOptions: (GMSNavigationRoutingOptions *) RoutingOptions
devolución de llamada: (GMSRouteInfoCallback). devolución de llamada

Muestra información de la ruta en función de la estrategia de enrutamiento: la ruta predeterminada mejor o más corta.

Muestra un valor nil si el proyecto no tiene permiso para llamar a esta API.

Parámetros:
destinoEl punto de referencia de destino
Opciones de enrutamientoLas opciones que se usan para recuperar la información de ruta. Se ignoran la estrategia de enrutamiento y la estrategia de rutas alternativas, ya que este método muestra la información de ruta para todas las estrategias de enrutamiento.
callbackEs la devolución de llamada realizada cuando se recibe información de rutas.
- (que puede ser GMSNavigationWaypoint * anulable) continueToNextDestination

Muestra el primer destino de la lista actual de destinos.

Después de esta llamada, se orientará al próximo destino, si corresponde.

Muestra:
a partir de ahora, la orientación del punto de referencia será nulo o nulo si ya no hay más puntos de referencia.

Borra todos los destinos establecidos anteriormente y quita del mapa las rutas calculadas.

Si los lineamientos están activos, se detendrán automáticamente.

- (NSTimeInterval) timeToWaypoint: (GMSNavigationWaypoint *). punto de referencia

Muestra el tiempo estimado para el waypoint determinado, o CLTimeIntervalMax si el waypoint no forma parte de la ruta actual.

Se actualiza en función de la posición actual del dispositivo mientras la guía está activa.

Muestra CLTimeIntervalMax si el punto de referencia proporcionado no es un destino en la ruta actual.

- (CLLocationDistance) distanceToWaypoint: (GMSNavigationWaypoint *). punto de referencia

Muestra la distancia estimada al punto de referencia determinado, o CLLocationDistanceMax si el punto de referencia no forma parte de la ruta actual.

Esta información se actualizará en función de la posición actual del dispositivo mientras la guía esté activa.

Muestra CLLocationDistanceMax si el punto de referencia proporcionado no es un destino en la ruta actual.

- (void) setTransactionID: (NSArray< NSString * > *) ID de transacción
errorHandler: (GMSNavigationTransactionIDErrorHandler anulable) errorHandler

Establece y registra en el servidor los ID de transacción en curso que se aplican a los eventos de navegación durante la sesión de navegación actual.

Los ID de transacción se borrarán al final de la sesión de navegación.

Parámetros:
ID de transacciónSon los ID de transacción que se aplican a la sesión de navegación actual. El ID de transacción debe ser único para cada transacción facturable. Un ID de transacción individual debe contener al menos un carácter y, como máximo, 64 caracteres. La lista puede estar vacía cuando finaliza una transacción (pero la sesión aún está en curso).
errorHandlerEs un bloque que se invocará de forma asíncrona en el subproceso principal si se produce un error cuando los ID de transacción no son válidos.

- (typedef void(^ GMSRouteStatusCallback)(GMSRouteStatus routeStatus)) [related]

Se llama cuando se encuentra una ruta desde la ubicación del dispositivo hacia los destinos proporcionados, o no se encuentra por un motivo indicado por RouteStatus.

- (typedef void(^ GMSRouteInfoCallback)(GMSNavigationRouteInfo *_Nullable routeInfo)) [related].

Se llama cuando se calcula la información de la ruta (ETA y distancia) al punto de referencia proporcionado.

Parámetros:
Información de la rutaLa información de la ruta al destino determinado. Será nulo si el cálculo falla.
- (typedef void(^ GMSNavigationTransactionIDErrorHandler)(NSError *error)) [related]

Se llama si falla la configuración de los ID de transacción mediante setTransactionID.

Consulta la documentación de la API para obtener más detalles.


Documentación de la propiedad

- (BOOL) eviteHighways [read, write, assign]

Si se deben evitar autopistas al generar rutas a destinos.

La configuración predeterminada es NO.

- (BOOL) avoidsTolls [read, write, assign]

Si se deben evitar rutas con peaje cuando se generan rutas hacia destinos.

La configuración predeterminada es NO.

- (BOOL) avoidsFerries [read, write, assign]

Si se deben evitar transbordadores al generar rutas hacia destinos

La configuración predeterminada es YES.

Establece la restricción de matrícula con el último dígito de la matrícula del conductor actual y el código de país.

Esto nos permite enrutar ciertos tipos de restricciones de rutas que se basan en un número de matrícula. Esto solo se aplicará a las llamadas a setDestinations que realicen después de establecer este valor. Lo ideal sería que lo configures de inmediato después de obtener el navegador.

Establece el valor en nulo si no hay restricción de matrícula. La configuración predeterminada es nil.

- (BOOL) guidanceActive [read, write, assign]

Si la guía paso a paso está habilitada actualmente

Si la orientación de Activo está SÍ, pero no hay una ruta disponible en este momento, la orientación comenzará cuando lo esté. Esta propiedad se establecerá en NO si se llama a clearDestinations o si llegamos a un punto de referencia.

- (BOOL) stopGuidanceAtArrival [read, write, assign]

Si se debe detener la orientación automáticamente cuando se llama a -navigator:didarrivalAtWaypoint:

Si la respuesta es NO, el encabezado y el pie de página de navegación seguirán mostrándose después de la llegada. El encabezado de navegación seguirá mostrando el paso de orientación final, y el pie de página de navegación seguirá actualizando el tiempo y la distancia restantes hasta que se alcance un tiempo o distancia de 0. Además, continuarán las actualizaciones de -navigator:didUpdateRemainingTime y -navigator:didUpdateRemainingDistance. Establece de forma explícita guidanceActive en NO para detener las indicaciones y las actualizaciones de tiempo y distancia restantes.

Si la respuesta es SÍ, guidanceActive se establecerá automáticamente en NO cuando llegue.

La configuración predeterminada es YES.

- (NSTimeInterval) timeUpdateThreshold [read, write, assign]

Es el cambio mínimo en el tiempo estimado para el siguiente destino que activará el método a navigator:didUpdateRemainingTime: para que se llame.

Si la estableces como NSTimeIntervalMax, se inhabilitarán las devoluciones de llamada de actualización de tiempo. Si se establece en un valor negativo, se usará el umbral predeterminado de un segundo. La configuración predeterminada es un segundo.

Nota:
Este valor se ignora si ningún objeto de escucha implementa navigator:didUpdateRemainingTime:.
- (CLLocationDistance) distanceUpdateThreshold [read, write, assign]

El cambio mínimo en la distancia estimada al siguiente destino que activará el método navigator:didUpdateRemainingDistance: para que se llame.

Si la estableces como CLLocationDistanceMax, se inhabilitarán las devoluciones de llamada de actualización de distancia. Si se establece en un valor negativo, se usará el umbral predeterminado de un medidor. La configuración predeterminada es un metro.

Nota:
Este valor se ignora si ningún objeto de escucha implementa navigator:didUpdateRemainingDistance:.
- (NSTimeInterval) timeToNextDestination [read, assign]

Muestra el tiempo estimado para el siguiente destino.

Esta información se actualizará en función de la posición actual del dispositivo mientras la guía esté activa.

Muestra CLTimeIntervalMax si no hay una ruta disponible.

- (CLLocationDistance) distanceToNextDestination [read, assign].

Muestra la distancia estimada para el siguiente destino.

Esta información se actualizará en función de la posición actual del dispositivo mientras la guía esté activa.

Muestra CLLocationDistanceMax si no hay una ruta disponible.

- (GMSNavigationDelayCategory) delayCategoryToNextDestination [read, assign]

Muestra la categoría de retraso al siguiente destino.

Esta información se actualizará en función de la posición actual del dispositivo mientras la guía esté activa.

Muestra GMSNavigationDelayCategoryNoData si no hay una ruta disponible o los datos de tráfico no están disponibles.

- (GMSRouteLeg*) currentRouteLeg [read, assign]

La etapa actual del viaje.

La GMSRouteLeg tendrá su posición inicial como la posición más reciente (con ajuste de ruta) del dispositivo.

- (NSArray<GMSRouteLeg *>*) routeLegs [read, assign]

Es un array de segmentos de ruta en el que cada etapa corresponde a un destino establecido.

- (GMSPath*) traveledPath [read, assign]

Es la ruta que el dispositivo recorrió desde la última vez que la orientación activa se estableció en SÍ.

Esta ruta estará vacía si nunca se inicia la orientación. La ruta consta de la ubicación ajustada según la ruta que muestra GMSRoadSnappedLocationProvider, pero se simplificó para quitar puntos redundantes. Por ejemplo, cuando se convierten puntos colineales consecutivos en un único segmento de línea.

- (GMSNavigationVoiceGuidance) voiceGuidance [read, write, assign]

Determina si se deben habilitar las indicaciones por voz para el tráfico y las alertas paso a paso.

La configuración predeterminada es GMSNavigationVoiceGuidanceAlertsAndGuidance.

Determina qué guía de voz se reproducirá en los dispositivos de audio.

La configuración predeterminada es GMSVoiceGuidanceAudioDeviceTypeBluetooth.

- (BOOL) vibrationEnabled [read, write, assign]

Determina si el dispositivo también vibrará cuando se reproduzcan alertas de voz.

- (BOOL) sendsBackgroundNotifications [read, write, assign]

Determina si se presentará UILocalNotifications con información de orientación cuando la app esté en segundo plano.

La configuración predeterminada es YES.

El modo de iluminación sugerido, según la hora del día y la ubicación del dispositivo.

- (BOOL) shouldDisplayPrompts [read, write, assign]

Determina si se deben mostrar los mensajes de tráfico, las mejores rutas y los incidentes.

La configuración predeterminada es YES.

GMSNavigationSpeedAlertOptions para personalizar los umbrales de activación de GMSNavigationSpeedAlertSeverity.

Puedes usar esta propiedad para personalizar los porcentajes de activación de las alertas de velocidad en porcentaje de las alertas principales y secundarias. También puede usar este método para personalizar el umbral de activación basado en el tiempo de una alerta de velocidad importante.

Si configuras nil, no recibirás datos de velocidad, y se mostrará la alerta de velocidad predeterminada del NavSDK: la alerta de velocidad muestra texto en rojo cuando la velocidad supera los 5 km/h o 10 km/h por encima del límite de velocidad, y muestra texto blanco y fondo rojo cuando se superan las 12 km/h.