وقتی ناوبری فعال باشد و حالت سفر روی رانندگی تنظیم شده باشد، «کیت توسعه نرمافزار ناوبری» برای iOS کنترل محدودیت سرعت را در گوشه پایین سمت راست نقشه نمایش میدهد که محدودیت سرعت فعلی را نشان میدهد. اگر رانندهای از حد مجاز سرعت فراتر رود، کنترل ازهم باز میشود تا سرعتسنجی در کنار نمایشگر حد مجاز سرعت نشان دهد و وقتی سرعت به آستانه معینی برسد، هشدارهایی را راهاندازی میکند.
بهطور پیشفرض، «کیت توسعه نرمافزار پیمایش» وقتی راننده ۵ مایل در ساعت (یا ۱۰ کیلومتر در ساعت) از حد مجاز سرعت فراتر میرود، هشدار سرعت جزئی را راهاندازی میکند و رنگ نوشتار سرعتسنج را به قرمز تغییر میدهد. وقتی راننده از حد مجاز سرعت ۱۰ مایل در ساعت (یا ۲۰ کیلومتر در ساعت) فراتر رود، هشدار سرعت عمدهای راهاندازی میکند و رنگ پسزمینه سرعتسنج را به قرمز تغییر میدهد.
میتوانید هم آستانه را برای راهاندازی هشدارها و هم نوشتار و رنگهای پسزمینهای را که سرعتسنج نمایش میدهد سفارشیسازی کنید. همچنین میتوانید از «کیت توسعه نرمافزار پیمایش» برای دردسترس قرار دادن اطلاعات سرعت راننده استفاده کنید. برای مثال، میتوانید اطلاعات سرعت را دراختیار شرکتهای همسفری قرار دهید تا به آنها کمک کنید رانندگانشان را به رعایت حد مجاز سرعت تشویق کنند و ایمنی را بهبود بخشند.
سفارشیسازی آستانه برای هشدارهای سرعت
میتوانید آستانه هشدار سرعت را برای هشدارهای سرعت جزئی و عمده بهعنوان درصدی از حد مجاز سرعت فعلی سفارشی کنید. همچنین میتوانید مشخص کنید که آستانه برای چه مدت باید فراتر از حد مجاز باشد تا نقشه هشدار را نمایش دهد.
مثال کد زیر آستانه هشدار سرعت جزئی را روی پنج درصد بالاتر از حد مجاز سرعت و آستانه هشدار سرعت عمده را روی ۱۰ درصد بالاتر از حد مجاز سرعت تنظیم میکند. این قانون مشخص میکند که نقشه پساز اینکه آستانه هشدار بهمدت پنج ثانیه رد شد، هشدار نمایش دهد.
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.
آبجکتیو-سی
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.
سفارشیسازی نحوه نمایش هشدارهای سرعت در سرعتسنج
میتوانید رنگهای نمایشگر سرعتسنج را برای هر سطح هشدار سفارشیسازی کنید.
جدول زیر رنگهای پیشفرض برای هشدارهای سرعت در کلاس
GMSNavigationSpeedometerUIOptions را نشان میدهد:
| عنصر | رنگ |
|---|---|
| MinorSpeedAlertBackgroundColorDayMode | 0xffffff(white) |
| MinorSpeedAlertBackgroundColorNightMode | 0x000000 |
| MinorSpeedAlertTextColorDayMode | 0xd93025 |
| MinorSpeedAlertTextColorNightMode | 0xd93025 |
| MajorSpeedAlertBackgroundColorDayMode | 0xd93025 |
| MajorSpeedAlertBackgroundColorNightMode | 0xd93025 |
| MajorSpeedAlertTextColorDayMode | 0xffffff(white) |
| MajorSpeedAlertTextColorNightMode | 0xffffff(سفید) |
میتوانید رنگ نوشتار و پسزمینه سرعتسنج را برای هشدارهای سرعت جزئی و عمده مشخص کنید:
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
آبجکتیو-سی
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;
دریافت اطلاعات سرعت از رانندگان
اگر برنامه شما نیاز به همرسانی اطلاعات درباره سرعت راننده دارد، میتوانید از «کیت توسعه نرمافزار ناوبری» نیز برای دردسترس قرار دادن اطلاعات سرعت راننده استفاده کنید. این ویژگی میتواند برای برنامههای همسفری مفید باشد، زیرا در این برنامهها ممکن است اپراتور بخواهد سرعت بیشازحد رانندگان را برای بهبود ایمنی نظارت کند.
برای مثال، نمونه زیر اطلاعات سرعت را زمانی همرسانی میکند که سرعت درصد مشخصی بالاتر از حد مجاز سرعت باشد:
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) { ... }
آبجکتیو-سی
// Listener method listening to speeding feed. #pragma mark
GMSNavigatorListener - (void)navigator:(GMSNavigator *)navigator
didUpdateSpeedingPercentage:(float)percentageAboveLimit { ... }