স্পিডোমিটার সতর্কতা কনফিগার করুন

যখন নেভিগেশন চালু করা হয়, তখন অ্যান্ড্রয়েডের জন্য নেভিগেশন এসডিকে ম্যাপের নিচের বাম কোণে একটি গতিসীমা নিয়ন্ত্রক প্রদর্শন করে, যা বর্তমান গতিসীমা দেখায়। যদি কোনো ব্যবহারকারী গতিসীমা অতিক্রম করেন, তাহলে নিয়ন্ত্রকটি প্রসারিত হয়ে গতিসীমা প্রদর্শনের পাশে একটি স্পিডোমিটার দেখায় এবং গতি একটি নির্দিষ্ট সীমায় পৌঁছালে সতর্কবার্তা পাঠায়।

ডিফল্টরূপে, ব্যবহারকারী গতিসীমা ৫ মাইল প্রতি ঘণ্টা (বা ১০ কিলোমিটার প্রতি ঘণ্টা) অতিক্রম করলে নেভিগেশন এসডিকে একটি ছোট গতির সতর্কতা জারি করে এবং স্পিডোমিটারের লেখার রঙ লাল করে দেয়। ব্যবহারকারী গতিসীমা ১০ মাইল প্রতি ঘণ্টা (বা ২০ কিলোমিটার প্রতি ঘণ্টা) অতিক্রম করলে এটি একটি বড় গতির সতর্কতা জারি করে এবং স্পিডোমিটারের পটভূমির রঙ লাল করে দেয়।

আপনি অ্যালার্ট চালু করার থ্রেশহোল্ড এবং স্পিডোমিটারে প্রদর্শিত টেক্সট ও ব্যাকগ্রাউন্ডের রঙ উভয়ই কাস্টমাইজ করতে পারেন। এছাড়াও, আপনার সেট করা থ্রেশহোল্ড অনুযায়ী ব্যবহারকারীর গতির তথ্য উপলব্ধ করতে আপনি নেভিগেশন SDK ব্যবহার করতে পারেন। উদাহরণস্বরূপ, আপনি রাইডশেয়ার অপারেটরদের কাছে গতির তথ্য উপলব্ধ করতে পারেন, যা তাদের ব্যবহারকারীদের গতিসীমা মেনে চলতে উৎসাহিত করতে এবং নিরাপত্তা উন্নত করতে সাহায্য করবে।

গতি সতর্কতার জন্য সীমা কাস্টমাইজ করুন

আপনি ছোট এবং বড় উভয় প্রকার গতি সতর্কতার জন্য বর্তমান গতির সীমার চেয়ে কত শতাংশ বেশি, সেই সীমাটি নিজের মতো করে নির্ধারণ করতে পারেন। এছাড়াও, কতক্ষণ পর সীমাটি অতিক্রম করলে মানচিত্রে সতর্কতাটি প্রদর্শিত হবে, সেটাও আপনি নির্দিষ্ট করে দিতে পারেন।

নিম্নলিখিত কোড উদাহরণটি একটি ছোটখাটো গতি সতর্কতার জন্য গতিসীমার পাঁচ শতাংশ বেশি এবং একটি গুরুতর গতি সতর্কতার জন্য গতিসীমার ১০ শতাংশ বেশি গতিসীমা নির্ধারণ করে। এটি নির্দিষ্ট করে যে, সতর্কতার সীমা পাঁচ সেকেন্ড ধরে অতিক্রম করার পর মানচিত্রটি একটি সতর্কতা প্রদর্শন করবে।


 float minorSpeedAlertThresholdPercentage = 5; float
majorSpeedAlertThresholdPercentage = 10; double severityUpgradeDurationSeconds =
5;

 // Configure SpeedAlertOptions SpeedAlertOptions.Builder
speedAlertOptionsBuilder = new SpeedAlertOptions.Builder();
speedAlertOptionsBuilder.setSpeedAlertThresholdPercentage(
SpeedAlertSeverity.MINOR, minorSpeedAlertThresholdPercentage);
speedAlertOptionsBuilder.setSpeedAlertThresholdPercentage(
SpeedAlertSeverity.MAJOR, majorSpeedAlertThresholdPercentage);
speedAlertOptionsBuilder.setSeverityUpgradeDurationSeconds(severityUpgradeDurationSeconds);

 // Set SpeedAlertOptions to Navigator.
navigator.setSpeedAlertOptions(speedAlertOptionsBuilder.build());

স্পিডোমিটার কীভাবে গতির সতর্কতা প্রদর্শন করবে তা কাস্টমাইজ করুন

গতির সতর্কতাগুলোকে আরও দৃষ্টি আকর্ষণকারী করতে, আপনি প্রতিটি সতর্কতা স্তরের জন্য স্পিডোমিটার ডিসপ্লের রং কাস্টমাইজ করতে পারেন।

নিচের সারণিতে NavigationView ক্লাসের স্পিড অ্যালার্টের ডিফল্ট রংগুলো দেখানো হলো:

উপাদান রঙ
মাইনরস্পিডঅ্যালার্টব্যাকগ্রাউন্ডকালারডেমোড 0xffffff(সাদা)
মাইনরস্পিডঅ্যালার্টব্যাকগ্রাউন্ডকালারনাইটমোড ০x০০০০০০
মাইনরস্পিডঅ্যালার্টটেক্সটকালারডেমোড 0xd93025
মাইনরস্পিডঅ্যালার্টটেক্সটকালারনাইটমোড 0xd93025
মেজরস্পিডঅ্যালার্টব্যাকগ্রাউন্ডকালারডেমোড 0xd93025
মেজরস্পিডঅ্যালার্টব্যাকগ্রাউন্ডকালারনাইটমোড 0xd93025
মেজরস্পিডঅ্যালার্টটেক্সটকালারডেমোড 0xffffff(সাদা)
মেজরস্পিডঅ্যালার্টটেক্সটকালারনাইটমোড 0xffffff(সাদা)

আপনি ছোট এবং বড় উভয় প্রকার গতি সতর্কতার জন্য স্পিডোমিটারের লেখা এবং পটভূমির রঙ নির্দিষ্ট করে দিতে পারেন:

 SpeedometerUiOptions speedometerUiOptions = new SpeedometerUiOptions.Builder()
 .setBackgroundColorDayMode(MINOR, some_color)
.setBackgroundColorNightMode(MINOR, some_color) .setTextColorDayMode(MINOR,
some_color) .setTextColorNightMode(MINOR, some_color)
.setBackgroundColorDayMode(MAJOR, some_color)
.setBackgroundColorNightMode(MAJOR, some_color) .setTextColorDayMode(MAJOR,
some_color) .setTextColorNightMode(MAJOR, some_color) .build();

 // Set SpeedometerUiOptions to NavigationView.
navigationView.setSpeedometerUiOptions(speedometerUiOptionsBuilder.build());
navigationView.setSpeedometerEnabled(true);

 // Set SpeedometerUiOptions to SupportNavigationFragment.
supportNavigationFragment.setSpeedometerUiOptions(speedometerUiOptionsBuilder.build());
 supportNavigationFragment.setSpeedometerEnabled(true);

ব্যবহারকারীদের কাছ থেকে গতির তথ্য গ্রহণ করুন

আপনার অ্যাপ্লিকেশনে যদি ব্যবহারকারীর গতি সম্পর্কিত তথ্য শেয়ার করার প্রয়োজন হয়, তবে আপনি নেভিগেশন এসডিকে (Navigation SDK) ব্যবহার করে ব্যবহারকারীর গতির তথ্য উপলব্ধ করতে পারেন। উদাহরণস্বরূপ, এটি রাইডশেয়ার অ্যাপ্লিকেশনগুলির জন্য উপযোগী হতে পারে, যেখানে একজন অপারেটর নিরাপত্তা উন্নত করার জন্য ব্যবহারকারীদের অতিরিক্ত গতি পর্যবেক্ষণ করতে চাইতে পারেন। আপনার অ্যাপে ব্যবহারকারীকে কোনো নেভিগেশন ভিউ রেন্ডার না করেও এটি করা সম্ভব।

উদাহরণস্বরূপ, নিম্নলিখিত উদাহরণটি গতিসীমার চেয়ে একটি নির্দিষ্ট শতাংশ বেশি গতিতে চলার সময় গতির তথ্য শেয়ার করে:

 // Existing flow for creating Navigator. NavigationApi.getNavigator();

 // Set the SpeedAlertOptions for the MAJOR and MINOR alerts. (Note that the //
severityUpgradeDurationSeconds field is by design not used in this flow.)
SpeedAlertOptions speedAlertOptions = ...;
navigator.setSpeedAlertOptions(speedAlertOptions);

 // Implement SpeedingListener. SpeedingListener speedingListener = new
SpeedingListener() { @Override public void onSpeedingUpdated(float
percentageAboveLimit, SpeedAlertSeverity speedAlertSeverity) { ... } };

 // Set speedingListener to Navigator.
navigator.setSpeedingListener(speedingListener);