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

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

ডিফল্টরূপে, ড্রাইভার যখন গতিসীমা 5 mph (বা 10 kph) অতিক্রম করে তখন নেভিগেশন SDK একটি ছোট গতির সতর্কতা ট্রিগার করে এবং স্পিডোমিটার পাঠ্যের রঙ লাল করে পরিবর্তন করে। যখন চালক 10 mph (বা 20 kph) গতিসীমা অতিক্রম করে তখন এটি একটি বড় গতির সতর্কতা ট্রিগার করে এবং স্পিডোমিটারের পটভূমির রঙ লাল করে।

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

গতির সতর্কতার জন্য থ্রেশহোল্ড কাস্টমাইজ করুন

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

নিম্নলিখিত কোড উদাহরণটি একটি ছোট গতির সতর্কতার জন্য থ্রেশহোল্ডকে গতি সীমার উপরে পাঁচ শতাংশে এবং একটি বড় গতির সতর্কতার জন্য থ্রেশহোল্ড গতি সীমার উপরে 10 শতাংশে সেট করে৷ এটি সুনির্দিষ্ট করে যে পাঁচ সেকেন্ডের জন্য একটি সতর্কতা থ্রেশহোল্ড অতিক্রম করার পরে মানচিত্রটি একটি সতর্কতা প্রদর্শন করে৷

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 ক্লাসে গতি সতর্কতার জন্য ডিফল্ট রং দেখায়:

উপাদান রঙ
MinorSpeedAlertBackgroundColorDayMode 0xffffff(সাদা)
MinorSpeedAlertBackground ColorNightMode 0x000000
MinorSpeedAlertTextColorDayMode 0xd93025
MinorSpeedAlertTextColorNightMode 0xd93025
MajorSpeedAlertBackgroundColorDayMode 0xd93025
মেজরস্পিড অ্যালার্ট ব্যাকগ্রাউন্ড কালার নাইটমোড 0xd93025
MajorSpeedAlertTextColorDayMode 0xffffff(সাদা)
MajorSpeedAlertTextColorNightMode 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);

ড্রাইভারদের কাছ থেকে গতির তথ্য পান

আপনার অ্যাপ্লিকেশানের যদি ড্রাইভারের গতি সম্পর্কে তথ্য ভাগ করে নেওয়ার প্রয়োজন হয়, তাহলে আপনি ড্রাইভারের গতির তথ্য উপলব্ধ করতে নেভিগেশন 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);