Riferimento per la classe GMS Naviga

Riferimento classe GMS Navigator

Panoramica

Questa è la classe principale dell'SDK di navigazione di Google per iOS e offre metodi per controllare la navigazione verso una destinazione e accedere alle informazioni sul percorso e sull'avanzamento.

Questa classe non supporta le sottoclassi.

Questa classe non è sicura per i thread. Tutti i metodi devono essere chiamati dal thread principale.

Funzioni pubbliche dei membri

(void) - addListener:
 Aggiunge un listener.
(BOOL) - removeListener:
 Rimuove un listener.
(void) - setDestinations:callback:
 Imposta più destinazioni per la navigazione, sostituendo eventuali destinazioni impostate in precedenza.
(void) - setDestinations:routingOptions:callback:
 Imposta più destinazioni per la navigazione, sostituendo eventuali destinazioni impostate in precedenza.
(void) - setDestinations:routeToken:callback:
 Imposta più destinazioni per la navigazione, utilizzando un token di percorso per navigare su un percorso precalcolato.
(void) - getRouteInfoForDestination:withRoutingOptions:callback:
 Restituisce informazioni sul percorso in base alla strategia di routing: il percorso migliore o più breve predefinito.
(GMSNavigationWaypoint nullo *)- continueToNextDestination
 Deprecato.
(void) - clearDestinations
 Cancella tutte le destinazioni impostate in precedenza e rimuove dalla mappa i percorsi calcolati.
(NSTimeInterval)- timeToWaypoint:
 Restituisce il tempo stimato per il waypoint specificato o, se il waypoint non fa parte del percorso corrente, o CLTimeIntervalMax.
(CLLocationDistanza)- distanceToWaypoint:
 Restituisce la distanza stimata al waypoint specificato o a CLLocationDistanceMax se il waypoint non fa parte del percorso corrente.
(void) - setTransactionIDs:errorHandler:
 Imposta e registra al server gli ID transazione in corso che si applicano agli eventi di navigazione durante la sessione di navigazione corrente.

Proprietà

BOOLavoidsHighways
 Indica se evitare le autostrade durante la generazione di percorsi per le destinazioni.
BOOLavoidsTolls
 Indica se evitare strade a pedaggio durante la generazione di percorsi per destinazioni.
BOOLavoidsFerries
 Indica se evitare i traghetti durante la generazione dei percorsi per le destinazioni.
GMSNavigationLicensePlateRestrictionlicensePlateRestriction
 Imposta la limitazione delle targhe con l'ultima cifra della targa e il codice paese del conducente.
BOOLguidanceActive
 Indica se le indicazioni passo passo sono attualmente attive.
BOOLstopGuidanceAtArrival
 Indica se le indicazioni devono interrompersi automaticamente quando viene chiamato -navigator:didArriveAtWaypoint:.
NSTimeIntervaltimeUpdateThreshold
 La variazione minima del tempo stimato per arrivare alla destinazione successiva che attiverà la chiamata del metodo navigator:didUpdateRemainingTime:.
CLLocationDistanzadistanceUpdateThreshold
 La variazione minima della distanza stimata fino alla destinazione successiva che attiverà la chiamata del metodo navigator:didUpdateRemainingDistance:.
NSTimeIntervaltimeToNextDestination
 Restituisce il tempo stimato per la destinazione successiva.
CLLocationDistanzadistanceToNextDestination
 Restituisce la distanza stimata per raggiungere la destinazione successiva.
Categoria di ritardo navigazione GMSdelayCategoryToNextDestination
 Restituisce la categoria di ritardo alla destinazione successiva.
GMSRouteLegcurrentRouteLeg
 L'attuale tappa del viaggio.
NSArray< GMSRouteLeg * > * routeLegs
 Un array di tratti di percorso in cui ogni tratto corrisponde a una destinazione impostata.
GMSPathtraveledPath
 Il percorso seguito dal dispositivo dall'ultima volta in cui indicazioniActive è stato impostato su SÌ.
GMSNavigationVoiceGuidancevoiceGuidance
 Consente di stabilire se attivare o meno la guida vocale per gli avvisi sul traffico e passo passo.
GMSVoiceGuidanceAudioDeviceTypeaudioDeviceType
 Consente di stabilire su quali dispositivi audio è possibile riprodurre la guida vocale.
BOOLvibrationEnabled
 Consente di stabilire se il dispositivo deve vibrare anche quando vengono riprodotti gli avvisi vocali.
BOOLsendsBackgroundNotifications
 Consente di stabilire se visualizzare UILocalNotifiche contenenti informazioni sulle indicazioni quando l'app è in background.
GMSNavigationLightingModesuggestedLightingMode
 La modalità di illuminazione suggerita, in base all'ora del giorno e alla posizione del dispositivo.
BOOLshouldDisplayPrompts
 Determina se devono essere visualizzate richieste di traffico, percorsi migliori e incidenti.
GMSNavigationSpeedAlertOptionsspeedAlertOptions
 GMSNavigationSpeedAlertOptions per personalizzare le soglie di attivazione per GMSGMSNavigatorSpeedAlertSeverity.

Tieni presente che queste non sono funzioni membro.

typedef void(^ GMSRouteStatusCallback )(GMSRouteStatus routeStatus)
 Chiamato quando viene rilevato un percorso dalla posizione del dispositivo alle destinazioni fornite o non è possibile trovarlo per un motivo indicato da RouteStatus.
typedef void(^ GMSRouteInfoCallback )(GMSNavigationRouteInfo *_Nullable routeInfo)
 Richiamato quando vengono calcolate le informazioni sul percorso (orario di arrivo stimato e distanza) per il waypoint fornito.
typedef void(^ GMSNavigationTransactionIDErrorHandler)(NSError *errore)
 Chiamato se l'impostazione degli ID transazione tramite setTransactionIDs non va a buon fine.

Documentazione sulle funzioni dei membri

- (void) addListener: (id< GMSNavigatorListener >) ascoltatore

Aggiunge un listener.

Il listener viene mantenuto con un riferimento debole.

Parametri:
listenerUn oggetto conforme al protocollo GMSNavigatorListener.
- (BOOL) removeListener: (id< GMSNavigatorListener >) ascoltatore

Rimuove un listener.

Parametri:
listenerUn oggetto conforme al protocollo GMSNavigatorListener.
Resi:
Restituisci YES se il listener è stato rimosso. Restituisce NO se l'oggetto non era un listener.
- (void) setDestinations: (NSArray< GMSNavigationWaypoint * > *) destinazioni
di chiamata: (GMSRouteStatusCallback) callback

Imposta più destinazioni per la navigazione, sostituendo eventuali destinazioni impostate in precedenza.

Il callback fornito verrà chiamato con GMSRouteStatusOK se viene trovato un percorso dalla posizione del dispositivo alla destinazione specificata. Se viene impostata una nuova destinazione prima di trovare un percorso, la richiesta verrà annullata e il callback verrà chiamato con GMSRouteStatusCanceled. Se per qualsiasi altro motivo non è possibile trovare un percorso, il callback verrà chiamato con uno stato di errore appropriato.

Il callback viene sempre inviato in modo asincrono nella coda principale.

- (void) setDestinations: (NSArray< GMSNavigationWaypoint * > *) destinazioni
routingOptions: (GMSNavigationRoutingOptions *) routingOptions
di chiamata: (GMSRouteStatusCallback) callback

Imposta più destinazioni per la navigazione, sostituendo eventuali destinazioni impostate in precedenza.

Le route restituite vengono calcolate utilizzando le opzioni di routing.

Parametri:
destinazioniUn array di waypoint di destinazione.
routingOptionsLe opzioni che influenzano la logica di routing (strategia di routing).
callbackChiamato quando viene rilevato un percorso dalla posizione del consumatore alle destinazioni fornite o non è possibile trovarlo per un motivo indicato da RouteStatus.
- (void) setDestinations: (NSArray< GMSNavigationWaypoint * > *) destinazioni
routeToken: (NSString *) routeToken
di chiamata: (GMSRouteStatusCallback) callback

Imposta più destinazioni per la navigazione, utilizzando un token di percorso per navigare su un percorso precalcolato.

I percorsi saranno gli stessi: il modulo modificherà la posizione di partenza del conducente e le condizioni della strada/del traffico. I reindirizzamenti continueranno a essere eseguiti in base alle opzioni di routing codificate nel token.

Se utilizzi il token del percorso per avviare una sessione di navigazione, sono supportati solo GMSNavigationTravelModeDriving e GMSNavigationTravelModeTwoWheeler. Configura la modalità di viaggio impostando travelMode. Se la modalità di viaggio corrente non è supportata, la chiamata non andrà a buon fine e nel callback verrà restituito un GMSRouteStatusTravelModeUnsupported.

Parametri:
destinazioniUn array di waypoint di destinazione deve essere uguale alle destinazioni assegnate all'API RoutesPreferred per ottenere il token di route.
routeTokenUna stringa token di route restituita dall'API RoutesPreferred. Le opzioni di routing specificate nell'API RoutesPreferred sono codificate in questo token di route e verranno utilizzate per rigenerare una route precalcolata o una nuova quando si verifica un nuovo percorso.
callbackChiamato quando viene rilevato un percorso dalla posizione del consumatore alle destinazioni fornite o non è possibile trovarlo per un motivo indicato da RouteStatus.
- (void) getRouteInfoForDestination: (GMSNavigationWaypoint *) destinazione
withRoutingOptions: (GMSNavigationRoutingOptions *) routingOptions
di chiamata: (GMSRouteInfoCallback) callback

Restituisce informazioni sul percorso in base alla strategia di routing: il percorso migliore o più breve predefinito.

Restituisce un valore nil se il progetto non ha l'autorizzazione per chiamare questa API.

Parametri:
destinazioneIl waypoint di destinazione.
routingOptionsLe opzioni utilizzate per recuperare le informazioni sul percorso. La strategia di routing e quella di percorso alternativa vengono ignorate poiché questo metodo restituisce le informazioni sul percorso per tutte le strategie di routing.
callbackIl callback chiamato quando vengono ricevute le informazioni sui percorsi.

Deprecato.

Anziché chiamare uno dei metodi -setDestinations:..., usa il nuovo elenco di destinazioni.

Fa emergere la prima destinazione dall'elenco di destinazioni corrente. Dopo questa chiamata, le indicazioni saranno indirizzate alla destinazione successiva, se presente.

Resi:
le indicazioni sui tappe ora stanno andando o sono pari a zero se non ne sono rimasti altri.
Nota:
Questo campo è stato ritirato. Utilizza invece uno dei metodi -setDestinations:...

Cancella tutte le destinazioni impostate in precedenza e rimuove dalla mappa i percorsi calcolati.

Se le indicazioni sono attive, verranno interrotte automaticamente.

- (NSTimeInterval) timeToWaypoint: (GMSNavigationWaypoint *) waypoint

Restituisce il tempo stimato per il waypoint specificato o, se il waypoint non fa parte del percorso corrente, o CLTimeIntervalMax.

L'impostazione viene aggiornata in base alla posizione attuale del dispositivo mentre sono attive le indicazioni.

Restituisce CLTimeIntervalMax se il waypoint fornito non è una destinazione nel percorso corrente.

- (CLLocationDistanza) distanceToWaypoint: (GMSNavigationWaypoint *) waypoint

Restituisce la distanza stimata al waypoint specificato o a CLLocationDistanceMax se il waypoint non fa parte del percorso corrente.

Verrà aggiornata in base alla posizione attuale del dispositivo mentre sono attive le indicazioni.

Restituisce CLLocationDistanceMax se il waypoint fornito non è una destinazione nel percorso corrente.

- (void) setTransactionID: (NSArray< NSString * > *) transactionIDs
errorHandler: (GMSNavigationTransactionIDErrorHandler) errorHandler

Imposta e registra al server gli ID transazione in corso che si applicano agli eventi di navigazione durante la sessione di navigazione corrente.

Gli ID transazione verranno cancellati al termine della sessione di navigazione.

Parametri:
transactionIDsGli ID transazione che si applicano alla sessione di navigazione corrente. L'ID transazione deve essere univoco per ogni transazione fatturabile. Un singolo ID transazione deve contenere un minimo di 1 e un massimo di 64 caratteri. L'elenco può essere vuoto quando una transazione è terminata (ma la sessione è ancora in corso).
errorHandlerUn blocco che verrà richiamato in modo asincrono nel thread principale se si verifica un errore quando gli ID transazione non sono validi.

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

Chiamato quando viene rilevato un percorso dalla posizione del dispositivo alle destinazioni fornite o non è possibile trovarlo per un motivo indicato da RouteStatus.

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

Richiamato quando vengono calcolate le informazioni sul percorso (orario di arrivo stimato e distanza) per il waypoint fornito.

Parametri:
routeInfoInformazioni sul percorso per la destinazione specificata. Sarà nullo se il calcolo non va a buon fine.
- (typedef void(^ GMSNavigationTransactionIDErrorHandler)(NSError *error)) [related]

Chiamato se l'impostazione degli ID transazione tramite setTransactionIDs non va a buon fine.

Per ulteriori dettagli, consulta la documentazione dell'API.


Documentazione della proprietà

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

Indica se evitare le autostrade durante la generazione di percorsi per le destinazioni.

Il valore predefinito è NO.

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

Indica se evitare strade a pedaggio durante la generazione di percorsi per destinazioni.

Il valore predefinito è NO.

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

Indica se evitare i traghetti durante la generazione dei percorsi per le destinazioni.

Il valore predefinito è SÌ.

Imposta la limitazione delle targhe con l'ultima cifra della targa e il codice paese del conducente.

In questo modo possiamo evitare determinati tipi di limitazioni stradali basate sul numero di targa. Questo vale solo per le chiamate setDestinations effettuate dopo l'impostazione di questo valore. La soluzione migliore è impostare questa impostazione immediatamente dopo aver ottenuto il navigatore.

Imposta il valore su zero in caso di assenza di limitazione delle targhe alterne. Il valore predefinito è null.

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

Indica se le indicazioni passo passo sono attualmente attive.

Se l'opzione indicazioniActive è SÌ, ma non è attualmente disponibile alcun percorso, verranno avviate le indicazioni non appena sarà disponibile un percorso. Questa proprietà verrà impostata su NO se viene chiamato clearDestinations o se arriviamo a un waypoint.

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

Indica se le indicazioni devono interrompersi automaticamente quando viene chiamato -navigator:didArriveAtWaypoint:.

Se la risposta è no, l'intestazione e il piè di pagina di navigazione continueranno a essere visualizzati dopo l'arrivo. L'intestazione di navigazione continuerà a mostrare il passaggio finale delle indicazioni, mentre il piè di pagina di navigazione continuerà ad aggiornare il tempo e la distanza rimanenti fino al raggiungimento di un valore/distanza pari a 0. Inoltre, gli aggiornamenti -navigator:didUpdateRemainingTime e -navigator:didUpdateRemainingDistance aggiornamenti continueranno. Imposta esplicitamente guidanceActive su NO per interrompere la guida e gli aggiornamenti di tempo/distanza rimanenti.

Se SÌ, guidanceActive verrà automaticamente impostato su NO all'arrivo.

Il valore predefinito è SÌ.

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

La variazione minima del tempo stimato per arrivare alla destinazione successiva che attiverà la chiamata del metodo navigator:didUpdateRemainingTime:.

Se viene impostato su NSTimeIntervalMax, i callback per l'aggiornamento dell'ora verranno disattivati. Se è impostato su un valore negativo, viene utilizzata la soglia predefinita di un secondo. Il valore predefinito è un secondo.

Nota:
Questo valore viene ignorato se nessun listener implementa navigator:didUpdateRemainingTime:.
- (CLLocationDistance) distanceUpdateThreshold [read, write, assign]

La variazione minima della distanza stimata fino alla destinazione successiva che attiverà la chiamata del metodo navigator:didUpdateRemainingDistance:.

Se è impostato su CLLocationDistanceMax, i callback per l'aggiornamento della distanza verranno disattivati. Se è impostato su un valore negativo, viene utilizzata la soglia predefinita di un metro. Il valore predefinito è un metro.

Nota:
Questo valore viene ignorato se nessun listener implementa navigator:didUpdateRemainingDistance:.
- (NSTimeInterval) timeToNextDestination [read, assign]

Restituisce il tempo stimato per la destinazione successiva.

Verrà aggiornata in base alla posizione attuale del dispositivo mentre sono attive le indicazioni.

Restituisce CLTimeIntervalMax se non è disponibile alcuna route.

- (CLLocationDistance) distanceToNextDestination [read, assign]

Restituisce la distanza stimata per raggiungere la destinazione successiva.

Verrà aggiornata in base alla posizione attuale del dispositivo mentre sono attive le indicazioni.

Restituisce CLLocationDistanceMax se non è disponibile alcun percorso.

- (GMSNavigationDelayCategory) delayCategoryToNextDestination [read, assign]

Restituisce la categoria di ritardo alla destinazione successiva.

Verrà aggiornata in base alla posizione attuale del dispositivo mentre sono attive le indicazioni.

Restituisce GMSGMSNavigatorDelayCategoryNoData se non sono disponibili route o se non sono disponibili dati sul traffico.

- (GMSRouteLeg*) currentRouteLeg [read, assign]

L'attuale tappa del viaggio.

La posizione di partenza di GMSRouteLeg corrisponderà alla posizione nota più recente (agganciata alla strada) del dispositivo.

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

Un array di tratti di percorso in cui ogni tratto corrisponde a una destinazione impostata.

- (GMSPath*) traveledPath [read, assign]

Il percorso seguito dal dispositivo dall'ultima volta in cui indicazioniActive è stato impostato su SÌ.

Questo percorso è vuoto se le indicazioni non sono mai state avviate. Il percorso è costituito dalla posizione agganciata alla strada restituita da GMSRoadSnappedLocationProvider, ma semplificata per rimuovere i punti ridondanti. Ad esempio, trasformando punti collinari consecutivi in un unico segmento di linea.

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

Consente di stabilire se attivare o meno la guida vocale per gli avvisi sul traffico e passo passo.

Il valore predefinito è GMSNavigatorVoiceGuidanceAlertsAndGuidance.

Consente di stabilire su quali dispositivi audio è possibile riprodurre la guida vocale.

Il valore predefinito è GMSVoiceGuidanceAudioDeviceTypeBluetooth.

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

Consente di stabilire se il dispositivo deve vibrare anche quando vengono riprodotti gli avvisi vocali.

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

Consente di stabilire se visualizzare UILocalNotifiche contenenti informazioni sulle indicazioni quando l'app è in background.

Il valore predefinito è SÌ.

La modalità di illuminazione suggerita, in base all'ora del giorno e alla posizione del dispositivo.

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

Determina se devono essere visualizzate richieste di traffico, percorsi migliori e incidenti.

Il valore predefinito è SÌ.

GMSNavigationSpeedAlertOptions per personalizzare le soglie di attivazione per GMSGMSNavigatorSpeedAlertSeverity.

Puoi utilizzare questa proprietà per personalizzare le soglie di attivazione degli avvisi di velocità in percentuale per gli avvisi minori e principali. Puoi utilizzare questo metodo anche per personalizzare la soglia di attivazione basata sul tempo per gli avvisi di velocità principali.

Se imposti null, non riceverai alcun dato del feed di velocità e verrà visualizzato l'avviso di velocità predefinito del NavSDK. L'avviso di velocità mostra un testo in rosso quando la velocità supera il limite di velocità di oltre 8 km/h o 10 km/h e mostra testo bianco e sfondo rosso per velocità superiore a 20 km/h.