Referência de classe do GMSNavigator

Referência de classe do GMSNavigator

Visão geral

Esta é a classe principal do SDK do Google Navigation para iOS e oferece métodos para controlar a navegação até um destino e acessar informações de trajeto e progresso.

Essa classe não aceita subclasses.

Esta classe não é thread-safe. Todos os métodos precisam ser chamados na linha de execução principal.

Funções membro públicas

(void) addListener:
 Adiciona um listener.
(BOOL) - removeListener:
 Remove um listener.
(void) setDestinations:callback:
 Define vários destinos para navegação, substituindo todos os destinos definidos anteriormente.
(void) - setDestinations:routingOptions:callback:
 Define vários destinos para navegação, substituindo todos os destinos definidos anteriormente.
(void) setDestinations:routeToken:callback:
 Define vários destinos para navegação, usando um token de rota para navegar em uma rota pré-computada.
(void) getRouteInfoForDestination:withRoutingOptions:callback:
 Retorna informações de rota com base na estratégia de roteamento: melhor rota padrão ou mais curta.
(GMSNavigationWaypoint * anulável)continueToNextDestination
 Obsoleto.
(void) - clearDestinations
 Limpa todos os destinos definidos anteriormente e remove todos os trajetos calculados do mapa.
(NSTimeInterval)timeToWaypoint:
 Retorna o tempo estimado para o waypoint especificado, ou CLTimeIntervalMax se o waypoint não faz parte do trajeto atual.
(CLLocationDistance)distanceToWaypoint:
 Retorna a distância estimada até o ponto de referência especificado ou CLLocationDistanceMax se o ponto de referência não fizer parte do trajeto atual.
(void) setTransactionIDs:errorHandler:
 Define e registra no servidor os IDs de transação em andamento que se aplicam aos eventos de navegação durante a sessão de navegação atual.

Propriedades

BOOLavoidsHighways
 Define se as rodovias serão evitadas ao gerar trajetos para destinos.
BOOLavoidsTolls
 Define se você deve evitar vias com pedágio ao gerar trajetos para destinos.
BOOLavoidsFerries
 Define se balsas devem ser evitadas ao gerar rotas para destinos.
GMSNavigationLicensePlateRestrictionlicensePlateRestriction
 Defina restrições de placa com o último dígito da placa e o código do país do motorista.
BOOLguidanceActive
 Se a orientação passo a passo está ativada no momento.
BOOLstopGuidanceAtArrival
 Define se a orientação precisa ser interrompida automaticamente quando -navigator:didOutcomeAtWaypoint: for chamado.
NSTimeIntervaltimeUpdateThreshold
 A mudança mínima no tempo estimado para o próximo destino que acionará a chamada do método navigator:didUpdateRemainingTime:.
CLLocationDistancedistanceUpdateThreshold
 A mudança mínima na distância estimada até o próximo destino que aciona a chamada do método navigator:didUpdateRemainingDistance:.
NSTimeIntervaltimeToNextDestination
 Retorna o tempo estimado para o próximo destino.
CLLocationDistancedistanceToNextDestination
 Retorna a distância estimada para o próximo destino.
GMSNavigationDelayCategorydelayCategoryToNextDestination
 Retorna a categoria de atraso para o próximo destino.
GMSRouteLegcurrentRouteLeg
 O trecho atual da jornada.
NSArray< GMSRouteLeg * > * routeLegs
 Uma matriz de trechos do trajeto em que cada trecho corresponde a um destino definido.
GMSPathtraveledPath
 O caminho percorrido pelo dispositivo desde a última vez que o guideActive foi definido como YES.
GMSNavigationVoiceGuidancevoiceGuidance
 Determina se a orientação por voz deve ser ativada para alertas de trânsito e navegação guiada.
GMSVoiceGuidanceAudioDeviceTypeaudioDeviceType
 Determina quais dispositivos de áudio a orientação por voz pode tocar.
BOOLvibrationEnabled
 Determina se o dispositivo também deve vibrar quando os alertas de voz são reproduzidos.
BOOLsendsBackgroundNotifications
 Determina se UILocalNotifications contendo informações de orientação serão apresentadas quando o aplicativo estiver em segundo plano.
GMSNavigationLightingModesuggestedLightingMode
 O modo de iluminação sugerido com base na hora do dia e na localização do dispositivo.
BOOLshouldDisplayPrompts
 Determina se as solicitações de trânsito, trajetos melhores e incidentes devem ser exibidos.
GMSNavigationSpeedAlertOptionsspeedAlertOptions
 GMSNavigationSpeedAlertOptions para personalizar os limites de acionamento de GMSNavigationSpeedAlertSeverity.

Observe que essas não são funções de membro.

typedef void(^ GMSRouteStatusCallback)(routeStatus GMSRouteStatus)
 Chamado quando um trajeto do local do dispositivo para os destinos fornecidos é encontrado ou não é possível por um motivo indicado pelo RouteStatus.
typedef void(^ GMSRouteInfoCallback )(GMSNavigationRouteInfo *_Nullable routeInfo)
 Chamado quando as informações de trajeto (HEC e distância) até o waypoint fornecido são calculadas.
typedef void(^ GMSNavigationTransactionIDErrorHandler )(NSError *error)
 Chamado se a definição de IDs de transação por meio de setTransactionIDs falhar.

Documentação da função membro

- (nulo) addListener: (id< GMSNavigatorListener >) ouvinte

Adiciona um listener.

O listener é mantido com uma referência fraca.

Parâmetros:
listenerUm objeto em conformidade com o protocolo GMSNavigatorListener.
- (BOOL) removeListener: (id< GMSNavigatorListener >) ouvinte

Remove um listener.

Parâmetros:
listenerUm objeto em conformidade com o protocolo GMSNavigatorListener.
Retorna:
Retorna YES se o listener tiver sido removido. Retorna NO se o objeto não for um listener.
- (void) setDestinations: (NSArray< GMSNavigationWaypoint * > *) destinos
callback: (GMSRouteStatusCallback). callback

Define vários destinos para navegação, substituindo todos os destinos definidos anteriormente.

O retorno de chamada fornecido será chamado com GMSRouteStatusOK se um trajeto for encontrado do local do dispositivo até o destino especificado. Se um novo destino for definido antes de uma rota ser encontrada, a solicitação será cancelada, e o retorno de chamada será chamado com GMSRouteStatusCanceled. Se não for possível encontrar uma rota por qualquer outro motivo, o callback será chamado com um status de erro adequado.

O callback sempre será enviado de maneira assíncrona na fila principal.

- (void) setDestinations: (NSArray< GMSNavigationWaypoint * > *) destinos
roteamentoOptions: (GMSNavigationRoutingOptions *) routingOptions
callback: (GMSRouteStatusCallback). callback

Define vários destinos para navegação, substituindo todos os destinos definidos anteriormente.

As rotas retornadas são calculadas usando opções de roteamento.

Parâmetros:
destinosUma matriz de waypoints de destino.
routingOptionsAs opções que influenciam a lógica de roteamento (estratégia de roteamento).
callbackChamado quando um trajeto do local do consumidor para os destinos fornecidos é encontrado ou não é encontrado por um motivo indicado pelo RouteStatus.
- (void) setDestinations: (NSArray< GMSNavigationWaypoint * > *) destinos
routeToken: (NSString *) routeToken
callback: (GMSRouteStatusCallback). callback

Define vários destinos para navegação, usando um token de rota para navegar em uma rota pré-computada.

Os trajetos são os mesmos, e o módulo muda para o local de partida do motorista e as condições da estrada/trânsito. Os redirecionamentos ainda vão ocorrer com base nas opções de roteamento codificadas no token.

Somente GMSNavigationTravelModeDriving e GMSNavigationTravelModeTwoWheeler são aceitos quando você usa o token de rota para iniciar uma sessão de navegação. Configure o meio de transporte definindo travelMode. A chamada vai falhar se o modo de viagem atual não for compatível, e um GMSRouteStatusTravelModeUnsupported será retornado no callback.

Parâmetros:
destinosUma matriz de waypoints de destino deve ser igual aos destinos fornecidos à API Routespreferred para receber o token de rota.
routeTokenUma string de token de rota retornada pela API Routespreferred. As opções de roteamento especificadas na API Routespreferred são codificadas nesse token de rota e são usadas para gerar novamente a rota pré-computada ou uma nova quando ocorre um redirecionamento.
callbackChamado quando uma rota do local do consumidor para os destinos fornecidos é encontrada ou não encontrada por um motivo indicado pelo RouteStatus.
- (void) getRouteInfoForDestination: (GMSNavigationWaypoint *) destino
withRoutingOptions: (GMSNavigationRoutingOptions *) routingOptions
callback: (GMSRouteInfoCallback). callback

Retorna informações de rota com base na estratégia de roteamento: melhor rota padrão ou mais curta.

Retorna um valor nil se o projeto não tiver permissão para chamar essa API.

Parâmetros:
destinationO waypoint de destino.
routingOptionsAs opções usadas para buscar as informações da rota. A estratégia de roteamento e a estratégia de rotas alternativas são ignoradas, já que este método retorna as informações de rota para todas as estratégias de roteamento.
callbackO callback chamado quando as informações das rotas são recebidas.

Obsoleto.

Chame um dos métodos -setDestinations:... com a nova lista de destinos em vez de chamar esse método.

Mostra o primeiro destino da lista atual. Após esta ligação, você receberá orientações sobre o próximo destino, se houver.

Retorna:
A orientação do waypoint agora está em direção ou é nula se não houver mais waypoints.
Observação:
Esse recurso foi descontinuado. Use um dos métodos -setDestinations:...

Limpa todos os destinos definidos anteriormente e remove todos os trajetos calculados do mapa.

Se a orientação estiver ativa, ela vai ser interrompida automaticamente.

- (NSTimeInterval) timeToWaypoint: (GMSNavigationWaypoint *) waypoint

Retorna o tempo estimado para o waypoint especificado, ou CLTimeIntervalMax se o waypoint não faz parte do trajeto atual.

Isso é atualizado com base na posição atual do dispositivo enquanto a orientação está ativa.

Retorna CLTimeIntervalMax se o waypoint fornecido não for um destino no trajeto atual.

(CLLocationDistance) distanceToWaypoint: (GMSNavigationWaypoint *) waypoint

Retorna a distância estimada até o ponto de referência especificado ou CLLocationDistanceMax se o ponto de referência não fizer parte do trajeto atual.

Ela será atualizada com base na posição atual do dispositivo enquanto a orientação estiver ativa.

Retorna CLLocationDistanceMax se o waypoint fornecido não for um destino no trajeto atual.

- (nulo) setTransactionIDs: (NSArray< NSString * > *) transactionIDs
errorHandler: (GMSNavigationTransactionIDErrorHandler anulável) errorHandler

Define e registra no servidor os IDs de transação em andamento que se aplicam aos eventos de navegação durante a sessão de navegação atual.

Os IDs das transações serão apagados no fim da sessão de navegação.

Parâmetros:
transactionIDsOs IDs das transações que se aplicam à sessão de navegação atual. O ID precisa ser exclusivo para cada transação faturável. Um ID da transação individual precisa ter entre 1 e 64 caracteres. A lista pode estar vazia quando uma transação termina, mas a sessão ainda está em andamento.
errorHandlerUm bloco que vai ser invocado de maneira assíncrona na linha de execução principal se ocorrer um erro quando os IDs da transação forem inválidos.

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

Chamado quando um trajeto do local do dispositivo para os destinos fornecidos é encontrado ou não é possível por um motivo indicado pelo RouteStatus.

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

Chamado quando as informações de trajeto (HEC e distância) até o waypoint fornecido são calculadas.

Parâmetros:
routeInfoAs informações de trajeto para o destino especificado. Será nulo se o cálculo falhar.
- (typedef void(^ GMSNavigationTransactionIDErrorHandler)(NSError *error)) [related]

Chamado se a definição de IDs de transação por meio de setTransactionIDs falhar.

Consulte a documentação da API para mais detalhes.


Documentação da propriedade

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

Define se as rodovias serão evitadas ao gerar trajetos para destinos.

O padrão é NO.

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

Define se você deve evitar vias com pedágio ao gerar trajetos para destinos.

O padrão é NO.

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

Define se balsas devem ser evitadas ao gerar rotas para destinos.

O padrão é YES.

Defina restrições de placa com o último dígito da placa e o código do país do motorista.

Isso nos permite contornar alguns tipos de restrições nas vias que são baseados no número da placa do veículo. Isso só se aplica a chamadas setDestinations feitas depois que esse valor é definido. O ideal é fazer essa configuração imediatamente após acessar o navegador.

Definido como nulo se não houver restrição de placas de veículos. O padrão é nulo.

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

Se a orientação passo a passo está ativada no momento.

Se orientaçãoActive for YES, mas nenhum trajeto estiver disponível, a orientação será iniciada quando um trajeto se tornar disponível. Esta propriedade será definida como NO se clearDestinations for chamado ou se chegarmos a um waypoint.

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

Define se a orientação precisa ser interrompida automaticamente quando -navigator:didOutcomeAtWaypoint: for chamado.

Se NÃO, o cabeçalho e o rodapé de navegação continuarão a ser exibidos após a chegada. O cabeçalho de navegação continuará mostrando a etapa final de orientação, e o rodapé de navegação continuará atualizando o tempo e a distância restantes até que um tempo/distância de 0 seja atingido. Além disso, as atualizações de -navigator:didUpdateENDTime e -navigator:didUpdateRestrictedDistance vão ser mantidas. Defina guidanceActive explicitamente como NÃO para interromper as orientações e as atualizações de tempo/distância restantes.

Quando YES, o valor de guidanceActive será definido automaticamente como NO na chegada.

O padrão é YES.

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

A mudança mínima no tempo estimado para o próximo destino que acionará a chamada do método navigator:didUpdateRemainingTime:.

Se definido como NSTimeIntervalMax, os callbacks de atualização de horário serão desativados. Se o valor for definido como negativo, o limite padrão de um segundo será usado. O padrão é um segundo.

Observação:
Esse valor será ignorado se nenhum listener implementar navigator:didUpdateRemainingTime:.
- (CLLocationDistance) distanceUpdateThreshold [read, write, assign]

A mudança mínima na distância estimada até o próximo destino que aciona a chamada do método navigator:didUpdateRemainingDistance:.

Se definido como CLLocationDistanceMax, os callbacks de atualização de distância serão desativados. Se o valor for definido como negativo, o limite padrão de um medidor será usado. O padrão é um metro.

Observação:
Esse valor será ignorado se nenhum listener implementar navigator:didUpdateRemainingDistance:.
- (NSTimeInterval) timeToNextDestination [read, assign]

Retorna o tempo estimado para o próximo destino.

Ela será atualizada com base na posição atual do dispositivo enquanto a orientação estiver ativa.

Retorna CLTimeIntervalMax se nenhuma rota estiver disponível.

- (CLLocationDistance) distanceToNextDestination [read, assign]

Retorna a distância estimada para o próximo destino.

Ela será atualizada com base na posição atual do dispositivo enquanto a orientação estiver ativa.

Retorna CLLocationDistanceMax se nenhum trajeto estiver disponível.

- (GMSNavigationDelayCategory) delayCategoryToNextDestination [read, assign]

Retorna a categoria de atraso para o próximo destino.

Ela será atualizada com base na posição atual do dispositivo enquanto a orientação estiver ativa.

Retorna GMSNavigationDelayCategoryNoData se nenhum trajeto ou dados de trânsito estiverem indisponíveis.

- (GMSRouteLeg*) currentRouteLeg [read, assign]

O trecho atual da jornada.

Este GMSRouteLeg terá sua posição inicial como a posição mais recente conhecida (travamento de estrada) do dispositivo.

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

Uma matriz de trechos do trajeto em que cada trecho corresponde a um destino definido.

- (GMSPath*) traveledPath [read, assign]

O caminho percorrido pelo dispositivo desde a última vez que o guideActive foi definido como YES.

Este caminho vai ficar vazio se a orientação nunca tiver começado. O caminho consiste na localização da estrada conforme retornado por GMSRoadSnappedLocationProvider, mas simplificado para remover pontos redundantes. Por exemplo, transformar pontos colineares consecutivos em um único segmento de linha.

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

Determina se a orientação por voz deve ser ativada para alertas de trânsito e navegação guiada.

O padrão é GMSNavigationVoiceGuidanceAlertsAndGuidance.

Determina quais dispositivos de áudio a orientação por voz pode tocar.

O padrão é GMSVoiceGuidanceAudioDeviceTypeBluetooth.

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

Determina se o dispositivo também deve vibrar quando os alertas de voz são reproduzidos.

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

Determina se UILocalNotifications contendo informações de orientação serão apresentadas quando o aplicativo estiver em segundo plano.

O padrão é YES.

O modo de iluminação sugerido com base na hora do dia e na localização do dispositivo.

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

Determina se as solicitações de trânsito, trajetos melhores e incidentes devem ser exibidos.

O padrão é YES.

GMSNavigationSpeedAlertOptions para personalizar os limites de acionamento de GMSNavigationSpeedAlertSeverity.

Você pode usar esta propriedade para personalizar os limites de acionamento de alertas de velocidade em porcentagem para alertas menores e maiores. Também é possível usar esse método para personalizar o limite de acionamento com base no tempo do alerta de velocidade principal.

Ao definir como "zero", você não receberá dados do feed de velocidade, e o alerta de velocidade padrão do NavSDK será exibido: o alerta de velocidade mostra texto em vermelho quando a velocidade está acima do limite de velocidade e mostra texto branco e fundo vermelho quando velocidade superior a 20 km/h.