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à | |
BOOL | avoidsHighways |
Indica se evitare le autostrade durante la generazione di percorsi per le destinazioni. | |
BOOL | avoidsTolls |
Indica se evitare strade a pedaggio durante la generazione di percorsi per destinazioni. | |
BOOL | avoidsFerries |
Indica se evitare i traghetti durante la generazione dei percorsi per le destinazioni. | |
GMSNavigationLicensePlateRestriction * | licensePlateRestriction |
Imposta la limitazione delle targhe con l'ultima cifra della targa e il codice paese del conducente. | |
BOOL | guidanceActive |
Indica se le indicazioni passo passo sono attualmente attive. | |
BOOL | stopGuidanceAtArrival |
Indica se le indicazioni devono interrompersi automaticamente quando viene chiamato -navigator :didArriveAtWaypoint:. | |
NSTimeInterval | timeUpdateThreshold |
La variazione minima del tempo stimato per arrivare alla destinazione successiva che attiverà la chiamata del metodo navigator:didUpdateRemainingTime: . | |
CLLocationDistanza | distanceUpdateThreshold |
La variazione minima della distanza stimata fino alla destinazione successiva che attiverà la chiamata del metodo navigator:didUpdateRemainingDistance: . | |
NSTimeInterval | timeToNextDestination |
Restituisce il tempo stimato per la destinazione successiva. | |
CLLocationDistanza | distanceToNextDestination |
Restituisce la distanza stimata per raggiungere la destinazione successiva. | |
Categoria di ritardo navigazione GMS | delayCategoryToNextDestination |
Restituisce la categoria di ritardo alla destinazione successiva. | |
GMSRouteLeg * | currentRouteLeg |
L'attuale tappa del viaggio. | |
NSArray< GMSRouteLeg * > * | routeLegs |
Un array di tratti di percorso in cui ogni tratto corrisponde a una destinazione impostata. | |
GMSPath * | traveledPath |
Il percorso seguito dal dispositivo dall'ultima volta in cui indicazioniActive è stato impostato su SÌ. | |
GMSNavigationVoiceGuidance | voiceGuidance |
Consente di stabilire se attivare o meno la guida vocale per gli avvisi sul traffico e passo passo. | |
GMSVoiceGuidanceAudioDeviceType | audioDeviceType |
Consente di stabilire su quali dispositivi audio è possibile riprodurre la guida vocale. | |
BOOL | vibrationEnabled |
Consente di stabilire se il dispositivo deve vibrare anche quando vengono riprodotti gli avvisi vocali. | |
BOOL | sendsBackgroundNotifications |
Consente di stabilire se visualizzare UILocalNotifiche contenenti informazioni sulle indicazioni quando l'app è in background. | |
GMSNavigationLightingMode | suggestedLightingMode |
La modalità di illuminazione suggerita, in base all'ora del giorno e alla posizione del dispositivo. | |
BOOL | shouldDisplayPrompts |
Determina se devono essere visualizzate richieste di traffico, percorsi migliori e incidenti. | |
GMSNavigationSpeedAlertOptions * | speedAlertOptions |
GMSNavigationSpeedAlertOptions per personalizzare le soglie di attivazione per GMSGMSNavigatorSpeedAlertSeverity. | |
Funzioni correlate | |
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:
-
listener Un oggetto conforme al protocollo GMSNavigatorListener
.
- (BOOL) removeListener: | (id< GMSNavigatorListener >) | ascoltatore |
Rimuove un listener.
- Parametri:
-
listener Un 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:
-
destinazioni Un array di waypoint di destinazione. routingOptions Le opzioni che influenzano la logica di routing (strategia di routing). callback Chiamato 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:
-
destinazioni Un array di waypoint di destinazione deve essere uguale alle destinazioni assegnate all'API RoutesPreferred per ottenere il token di route. routeToken Una 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. callback Chiamato 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:
-
destinazione Il waypoint di destinazione. routingOptions Le 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. callback Il callback chiamato quando vengono ricevute le informazioni sui percorsi.
Deprecato.
Chiama uno dei metodi -setDestinations
:... utilizzando 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:....
- (void) clearDestinations |
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:
-
transactionIDs Gli 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). errorHandler Un blocco che verrà richiamato in modo asincrono nel thread principale se si verifica un errore quando gli ID transazione non sono validi.
Documentazione relativa ad amici e funzioni correlate
- (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:
-
routeInfo Informazioni 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Ì.
- (GMSNavigationLicensePlateRestriction*) licensePlateRestriction [read, write, assign] |
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.
- (GMSVoiceGuidanceAudioDeviceType) audioDeviceType [read, write, assign] |
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Ì.
- (GMSNavigationLightingMode) suggestedLightingMode [read, assign] |
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*) speedAlertOptions [read, write, assign] |
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.