Configura avvisi contachilometri

Quando la navigazione è abilitata, l'SDK di navigazione per iOS mostra un controllo del limite di velocità nell'angolo in basso a sinistra della mappa che mostra il limite di velocità attuale. Se un conducente supera il limite di velocità, il controllo si espande mostrando un tachimetro accanto alla visualizzazione del limite di velocità e attiva degli avvisi quando la velocità raggiunge una determinata soglia.

Per impostazione predefinita, l'SDK di navigazione attiva un avviso di velocità minore quando il conducente supera il limite di velocità di 10 km/h e cambia il colore del testo del tachimetro in rosso. Attiva un avviso di velocità significativo quando il conducente supera il limite di velocità di 20 km/h e cambia il colore di sfondo del tachimetro in rosso.

Puoi personalizzare sia la soglia per l'attivazione degli avvisi sia i colori del testo e dello sfondo visualizzati dal tachimetro. Inoltre, puoi usare l'SDK di navigazione per rendere disponibili le informazioni sulla velocità del conducente. Ad esempio, potresti rendere disponibili informazioni sulla velocità agli operatori di ridesharing per incoraggiarli a rispettare il limite di velocità e migliorare la sicurezza.

Personalizzazione delle soglie per gli avvisi di velocità

Puoi personalizzare la soglia di avviso di velocità per gli avvisi di velocità minori e principali sotto forma di percentuale rispetto al limite di velocità attuale. Puoi anche specificare per quanto tempo la soglia viene superata prima che la mappa mostri l'avviso.

L'esempio di codice seguente imposta la soglia per un avviso di velocità minore al 5% oltre il limite di velocità e la soglia per un avviso di velocità principale al 10% al di sopra del limite di velocità. Specifica che la mappa mostra un avviso dopo il superamento di una soglia di avviso per cinque secondi.

Swift

allow minorSpeedAlertThresholdPercentage: CGFloat = 0,05let majorSpeedAlertThresholdPercentage: CGFloat = 0,1 del valore di severityUpgradeDurationSecond: TimeInterval = 5

// Configura SpeedAlertOptions lasciate mutableSpeedAlertOptions: GMSNavigatorMutableSpeedAlertOptions = GMSNavigatorMutableSpeedAlertOptions() mutableSpeedAlertOptions.setSpeedAlertThresholdPercentage(minorSpeedAlertThresholdPercentage, per: .minor) mutableSpeedAlertOptions.setSpeedAlertPercentage(majorSpeedErrorThresholdPercentage, per: .majeverSpeedErrorOptionsDuration

// Imposta SpeedAlertOptions su Navigator. mapView.navigator?.speedAlertOptions = mutableSpeedAlertOptions; mapView.navigator?.add(self); // Necessario solo se si ascoltano gli eventi delegati.

Objective-C

const statico CGFloat minorSpeedAlertThresholdPercentage = 0,05; const statico CGFloat maggioriSpeedAlertThresholdPercentage = 0,1; const statico NSTimeInterval severityUpgradeDurationDuration = 5;

// Configura SpeedAlertOptions GMSNavigatorMutableSpeedAlertOptions *mutableSpeedAlertOptions = [[GMSNavigatorMutableSpeedAlertOptions alloc] init]; [mutableSpeedAlertOptions setSpeedAlertThresholdPercentage: minorSpeedAlertThresholdPercentage forSpeedAlertSeverity:GMS BrowsingMutableConnectSeverityMinor]; [mutableSpeedAlertOptions setSpeedAlertPercentage:majorSpeedRate

// Imposta SpeedAlertOptions su Navigator. mapView.navigator.speedAlertOptions = mutableSpeedAlertOptions; [mapView.navigator addListener:self]; // Necessario solo se si ascoltano gli eventi delegati.

Personalizzazione della modalità di visualizzazione degli avvisi di velocità nel tachimetro

Puoi personalizzare i colori del display del tachimetro per ogni livello di avviso.

La tabella seguente mostra i colori predefiniti per gli avvisi di velocità nella classe GMSNavigationSpeedometerUIOptions:

ElementoColore
MinorSpeedAlertBackgroundColorDayMode 0xffffff(bianco)
MinorSpeedAlertBackgroundColorNightMode 0x000000
MinorSpeedAlertTextColorDayMode 0xd93025
MinorSpeedAlertTextColorNightMode 0xd93025
MajorSpeedAlertBackgroundColorDayMode 0xd93025
MajorSpeedAlertBackgroundColorNightMode 0xd93025
MajorSpeedAlertTextColorDayMode 0xffffff(bianco)
MajorSpeedAlertTextColorNightMode 0xffffff(bianco)

Puoi specificare il testo e il colore di sfondo del tachimetro per gli avvisi di velocità minori e principali:

Swift

allow mutableSpeedometerUIOptions: GMSnavigationMutableSpeedometerUIOptions = GMS NavigationMutableSpeedometerUIOptions() mutableSpeedometerUIOptions.setTextColor(minorSpeedAlertTextColor, for: .minor, lightingMode: .normal) mutableSpeedometerUIModeOptions.setTextColor(majorlightSpeedAlertTextColoror,

mapView.settings.speedometerUIOptions = mutableSpeedometerUIOptions

Objective-C

GMSGMSNavigazioneMutableSpeedometerUIOptions *mutableSpeedometerUIOptions = [[GMSGMS NavigationMutableSpeedometerUIOptions alloc] init]; [mutableSpeedometerUIOptions setTextColor: minorSpeedAlertTextColor forNavigatorSpeed riprende severity: GMS

mapView.settings.speedometerUIOptions = mutableSpeedometerUIOptions;

Ricezione di informazioni sulla velocità dai conducenti

Se la tua applicazione richiede la condivisione di informazioni sulla velocità del conducente, puoi utilizzare anche l'SDK di navigazione per rendere disponibili le informazioni sulla velocità del conducente. Questo può essere utile per applicazioni di ridesharing in cui un operatore potrebbe voler monitorare l'eccessiva velocità dei conducenti per migliorare la sicurezza.

Ad esempio, l'esempio seguente condivide informazioni sulla velocità quando la velocità è una percentuale specificata oltre il limite:

Swift

// Metodo listener per la condivisione di informazioni sulla velocità quando la velocità supera il limite di velocità di una percentuale specificata. #pragma mark GMSNavigatorListener func navigator(_ navigator : GMSNavigator, didUpdateSpeedingPercentage percentageAboveLimit : Float) { ... }

Objective-C

// Metodo Listener di ascolto del feed sull'accelerazione. #pragma mark GMSNavigatorListener - (void)navigator:(GMSNavigator *)navigator didUpdateSpeedingPercentage:(float)percentageAboveLimit { ... }