নেভিগেশন চালু করা থাকলে এবং ভ্রমণের মোড ড্রাইভিংয়ে সেট করা থাকলে, iOS-এর জন্য Navigation SDK ম্যাপের নিচের বাঁদিকের কোণে স্পিড লিমিট কন্ট্রোল দেখায় যা বর্তমান স্পিড লিমিট দেখায়। কোনও ড্রাইভার স্পিড লিমিট অতিক্রম করলে, স্পিড লিমিট ডিসপ্লের পাশে স্পিডোমিটার দেখানোর জন্য কন্ট্রোলটি বড় হয়ে যায় এবং স্পিড একটি নির্দিষ্ট থ্রেশহোল্ডে পৌঁছালে সতর্কতা ট্রিগার করে।
ডিফল্ট হিসেবে, ড্রাইভার স্পিড লিমিটের থেকে ৫ মাইল প্রতি ঘণ্টা (বা ১০ কিমি প্রতি ঘণ্টা) বেশি স্পিডে গাড়ি চালালে, Navigation SDK একটি মাইনর স্পিড অ্যালার্ট ট্রিগার করে এবং স্পিডোমিটার টেক্সটের রঙ লাল করে দেয়। ড্রাইভার যদি গতিসীমা ১০ মাইল প্রতি ঘণ্টা (বা ২০ কিমি প্রতি ঘণ্টা) অতিক্রম করে, তাহলে এটি একটি বড় স্পিড অ্যালার্ট ট্রিগার করে এবং স্পিডোমিটারের ব্যাকগ্রাউন্ডের রঙ লাল করে দেয়।
আপনি অ্যালার্ট ট্রিগার করার থ্রেশহোল্ড এবং স্পিডোমিটারে দেখানো টেক্সট ও ব্যাকগ্রাউন্ডের রঙ, দুটিই কাস্টমাইজ করতে পারবেন। এছাড়াও, আপনি ড্রাইভারের গতি সংক্রান্ত তথ্য উপলভ্য করতে Navigation SDK ব্যবহার করতে পারেন। যেমন, আপনি রাইডশেয়ার অপারেটরদের স্পিড সংক্রান্ত তথ্য দিতে পারেন যাতে তারা ড্রাইভারদের স্পিড লিমিট মেনে চলতে এবং নিরাপত্তা উন্নত করতে উৎসাহিত করতে পারেন।
স্পিড অ্যালার্টের জন্য থ্রেশহোল্ড কাস্টমাইজ করা
আপনি বর্তমান গতির সীমা থেকে শতাংশ হিসেবে ছোট ও বড় উভয় ধরনের স্পিড অ্যালার্টের জন্য স্পিড অ্যালার্ট থ্রেশহোল্ড কাস্টমাইজ করতে পারবেন। এছাড়াও, ম্যাপে সতর্কতা দেখানোর আগে থ্রেশহোল্ড কতক্ষণ অতিক্রম করেছে তা আপনি নির্দিষ্ট করতে পারেন।
নিম্নলিখিত কোডের উদাহরণটি স্পিড লিমিটের পাঁচ শতাংশ বেশি হলে মাইনর স্পিড অ্যালার্টের থ্রেশহোল্ড সেট করে এবং স্পিড লিমিটের ১০ শতাংশ বেশি হলে মেজর স্পিড অ্যালার্টের থ্রেশহোল্ড সেট করে। এটি নির্দিষ্ট করে যে ম্যাপটি পাঁচ সেকেন্ডের জন্য সতর্কতা থ্রেশহোল্ড অতিক্রম করার পরে একটি সতর্কতা প্রদর্শন করে।
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.
স্পিডোমিটার কীভাবে স্পিড সংক্রান্ত সতর্কতা দেখায় তা কাস্টমাইজ করা
আপনি প্রতিটি সতর্কতার লেভেলের জন্য স্পিডোমিটার ডিসপ্লের রঙ কাস্টমাইজ করতে পারবেন।
নিম্নলিখিত সারণীতে
GMSNavigationSpeedometerUIOptions ক্লাসে স্পিড অ্যালার্টের জন্য ডিফল্ট রঙ দেখানো হয়েছে:
| এলিমেন্ট | রঙ |
|---|---|
| MinorSpeedAlertBackgroundColorDayMode | 0xffffff(white) |
| MinorSpeedAlertBackgroundColorNightMode | 0x000000 |
| MinorSpeedAlertTextColorDayMode | 0xd93025 |
| MinorSpeedAlertTextColorNightMode | 0xd93025 |
| MajorSpeedAlertBackgroundColorDayMode | 0xd93025 |
| MajorSpeedAlertBackgroundColorNightMode | 0xd93025 |
| MajorSpeedAlertTextColorDayMode | 0xffffff(white) |
| MajorSpeedAlertTextColorNightMode | 0xffffff(white) |
আপনি ছোট ও বড়, দুই ধরনের স্পিড অ্যালার্টের জন্যই স্পিডোমিটারের টেক্সট ও ব্যাকগ্রাউন্ডের রঙ নির্দিষ্ট করতে পারবেন:
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;
ড্রাইভারদের থেকে স্পিড সংক্রান্ত তথ্য পাওয়া
আপনার অ্যাপ্লিকেশনে যদি ড্রাইভারের গতি সম্পর্কে তথ্য শেয়ার করার প্রয়োজন হয়, তাহলে আপনি ড্রাইভারের গতি সংক্রান্ত তথ্য উপলভ্য করতে Navigation SDK ব্যবহার করতে পারেন। এটি রাইডশেয়ার অ্যাপ্লিকেশনের জন্য উপযোগী হতে পারে, যেখানে অপারেটর নিরাপত্তা উন্নত করার জন্য ড্রাইভারদের অতিরিক্ত গতিতে গাড়ি চালানো মনিটর করতে চাইতে পারেন।
যেমন, নিম্নলিখিত উদাহরণে স্পিড লিমিটের থেকে স্পিড নির্দিষ্ট শতাংশ বেশি হলে স্পিড সংক্রান্ত তথ্য শেয়ার করা হয়:
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 { ... }