Hız saati uyarılarını yapılandırma

Navigasyon etkinleştirildiğinde ve ulaşım modu sürüş moduna ayarlandığında, iOS için Navigasyon SDK'sı haritanın sol alt köşesinde geçerli hız sınırını gösteren bir hız sınırı kontrolü görüntüler. Sürücü hız sınırını aşarsa kontrol, hız sınırı ekranının yanında bir hız saati gösterecek şekilde genişler ve hız belirli bir eşiğe ulaştığında uyarı tetikler.

Varsayılan olarak, Navigasyon SDK'sı sürücü hız sınırını 8 mil/sa (10 km/sa) aştığında küçük bir hız uyarısını tetikler ve hız göstergesi metninin rengini kırmızıya değiştirir. Sürücü hız sınırını 10 mil (20 km/sa) aştığında büyük bir hız uyarısını tetikler ve hız saatinin arka plan rengini kırmızıya dönüştürür.

Hem uyarıları tetikleme eşiğini hem de hız saatinin gösterdiği metin ve arka plan renklerini özelleştirebilirsiniz. Sürücü hızı bilgilerini sunmak için Navigasyon SDK'sını da kullanabilirsiniz. Örneğin, araç paylaşımı operatörlerine hız bilgilerini sunarak, sürücülerini hız sınırına uymaya teşvik edebilir ve güvenliği artırabilirsiniz.

Hız uyarıları için eşikleri özelleştirme

Hem küçük hem de büyük hız uyarıları için hız uyarısı eşiğini, mevcut hızın hız sınırının üzerinde bir yüzde olarak özelleştirebilirsiniz. Haritada uyarı görüntülenmeden önce eşiğin ne kadar süre aşılacağını da belirtebilirsiniz.

Aşağıdaki kod örneği, küçük bir hız uyarısının eşiğini hız sınırının yüzde beşine, büyük bir hız uyarısının eşiğini ise hız sınırının yüzde 10'una ayarlar. Bir uyarı eşiği beş saniye boyunca aşıldığında haritada bir uyarı gösterileceğini belirtir.

Swift

let minorSpeedAlertThresholdPercentage: CGFloat = 0.05 let
majorSpeedAlertThresholdPercentage: CGFloat = 0.1 let
severityUpgradeDurationSeconds: TimeInterval = 5

// Configure SpeedAlertOptions let mutableSpeedAlertOptions:
GMSNavigationMutableSpeedAlertOptions = GMSNavigationMutableSpeedAlertOptions()
 mutableSpeedAlertOptions.setSpeedAlertThresholdPercentage(minorSpeedAlertThresholdPercentage,
for: .minor)
mutableSpeedAlertOptions.setSpeedAlertThresholdPercentage(majorSpeedAlertThresholdPercentage,
for: .major) mutableSpeedAlertOptions.severityUpgradeDurationSeconds =
severityUpgradeDurationSeconds

// Set SpeedAlertOptions to Navigator. mapView.navigator?.speedAlertOptions =
mutableSpeedAlertOptions; mapView.navigator?.add(self); // Only needed if
listening to the delegate events.

Objective-C

static const CGFloat minorSpeedAlertThresholdPercentage = 0.05; static const
CGFloat majorSpeedAlertThresholdPercentage = 0.1; static const NSTimeInterval
severityUpgradeDurationSeconds = 5;

// Configure SpeedAlertOptions GMSNavigationMutableSpeedAlertOptions
*mutableSpeedAlertOptions = [[GMSNavigationMutableSpeedAlertOptions alloc]
init]; [mutableSpeedAlertOptions setSpeedAlertThresholdPercentage:
minorSpeedAlertThresholdPercentage
forSpeedAlertSeverity:GMSNavigationSpeedAlertSeverityMinor];
[mutableSpeedAlertOptions
setSpeedAlertThresholdPercentage:majorSpeedAlertThresholdPercentage
forSpeedAlertSeverity:GMSNavigationSpeedAlertSeverityMajor];
[mutableSpeedAlertOptions
setSeverityUpgradeDurationSeconds:severityUpgradeDurationSeconds];

// Set SpeedAlertOptions to Navigator. mapView.navigator.speedAlertOptions =
mutableSpeedAlertOptions; [mapView.navigator addListener:self]; // Only needed
if listening to the delegate events.

Hız saatinin hız uyarılarını görüntüleme şeklini özelleştirme

Her uyarı düzeyi için hız saati ekranının renklerini özelleştirebilirsiniz.

Aşağıdaki tabloda GMSNavigationSpeedometerUIOptions sınıfındaki hız uyarıları için varsayılan renkler gösterilmektedir:

ÖğeRenk
MinorSpeedAlertBackgroundColorDayMode 0xops(beyaz)
MinorSpeedAlertBackgroundColorNightMode 0x000.000
MinorSpeedAlertTextColorDayMode 0xd93025
MinorSpeedAlertTextColorNightMode 0xd93025
MajorSpeedAlertBackgroundColorDayMode 0xd93025
MajorSpeedAlertBackgroundColorNightMode 0xd93025
MajorSpeedAlertTextColorDayMode 0xops(beyaz)
MajorSpeedAlertTextColorNightMode 0xops(beyaz)

Hem küçük hem de büyük hız uyarıları için hız saatinin metin ve arka plan rengini belirtebilirsiniz:

Swift

let mutableSpeedometerUIOptions: GMSNavigationMutableSpeedometerUIOptions =
GMSNavigationMutableSpeedometerUIOptions()
mutableSpeedometerUIOptions.setTextColor(minorSpeedAlertTextColor, for: .minor,
lightingMode: .normal)
mutableSpeedometerUIOptions.setTextColor(majorSpeedAlertTextColor, for: .major,
lightingMode: .normal)
mutableSpeedometerUIOptions.setBackgroundColor(minorSpeedAlertNightModeBackgroundColor,
for: .minor, lightingMode: .lowLight)
mutableSpeedometerUIOptions.setBackgroundColor(majorSpeedAlertDayModeBackgroundColor,
for: .major, lightingMode: .normal)

mapView.settings.speedometerUIOptions = mutableSpeedometerUIOptions

Objective-C

GMSNavigationMutableSpeedometerUIOptions *mutableSpeedometerUIOptions =
[[GMSNavigationMutableSpeedometerUIOptions alloc] init];
[mutableSpeedometerUIOptions setTextColor: minorSpeedAlertTextColor
forSpeedAlertSeverity: GMSNavigationSpeedAlertSeverityMinor lightingMode:
GMSNavigationLightingModeNormal]; [mutableSpeedometerUIOptions setTextColor:
majorSpeedAlertTextColor forSpeedAlertSeverity:
GMSNavigationSpeedAlertSeverityMajor lightingMode:
GMSNavigationLightingModeNormal]; [mutableSpeedometerUIOptions
setBackgroundColor: minorSpeedAlertNightModeBackgroundColor
forSpeedAlertSeverity: GMSNavigationSpeedAlertSeverityMinor lightingMode:
GMSNavigationLightingModeLowLight]; [mutableSpeedometerUIOptions
setBackgroundColor: majorSpeedAlertDayModeBackgroundColor forSpeedAlertSeverity:
GMSNavigationSpeedAlertSeverityMajor
lightingMode:GMSNavigationLightingModeNormal];

mapView.settings.speedometerUIOptions = mutableSpeedometerUIOptions;

Sürücülerden hız bilgisi alınıyor

Uygulamanız sürücü hızıyla ilgili bilgilerin paylaşılmasını gerektiriyorsa sürücü hızı bilgilerini sunmak için Navigasyon SDK'sını da kullanabilirsiniz. Bu, operatörün güvenliği artırmak amacıyla sürücülerin aşırı hız yaptığı hızları izlemek isteyebileceği yolculuk paylaşımı uygulamaları için yararlı olabilir.

Örneğin, aşağıdaki örnekte hız, hız sınırının belirli bir yüzdesi olduğunda hız bilgileri paylaşılmaktadır:

Swift

// Listener method for sharing speed information when the speed exceeds the
speed limit by a specified percentage. #pragma mark GMSNavigatorListener func
navigator(_ navigator : GMSNavigator, didUpdateSpeedingPercentage
percentageAboveLimit : Float) { ... }

Objective-C

// Listener method listening to speeding feed. #pragma mark
GMSNavigatorListener - (void)navigator:(GMSNavigator *)navigator
didUpdateSpeedingPercentage:(float)percentageAboveLimit { ... }