Android Driver SDK 4.0 মাইগ্রেশন গাইড

Android 4.0-এর জন্য Driver SDK রিলিজের ক্ষেত্রে নির্দিষ্ট কিছু অপারেশনের জন্য আপনাকে কোড আপডেট করতে হবে। এই নির্দেশিকায় পরিবর্তনগুলি এবং আপনার কোড মাইগ্রেট করার জন্য আপনাকে কী করতে হবে তা উল্লেখ করা হয়েছে।

প্যাকেজের নাম পরিবর্তন

প্যাকেজের নাম com.google.android.libraries.ridesharing.driver থেকে com.google.android.libraries.mapsplatform.transportation.driver-এ পরিবর্তন করা হয়েছে। আপনার কোডে রেফারেন্স আপডেট করুন।

SDK শুরু করা হচ্ছে

আগের ভার্সনে, আপনি Navigation SDK ইনিশিয়ালাইজ করতেন এবং তারপর FleetEngine ক্লাসের রেফারেন্স পেতেন। Driver SDK v4-এ, এইভাবে SDK শুরু করুন:

  1. NavigationApi থেকে Navigator অবজেক্ট পান।

    NavigationApi.getNavigator(
        this, // Activity
        new NavigationApi.NavigatorListener() {
          @Override
          public void onNavigatorReady(Navigator navigator) {
            // Keep a reference to the Navigator (used to configure and start nav)
            this.navigator = navigator;
          }
        }
    );
    
  2. প্রয়োজনীয় ফিল্ড পূরণ করে একটি DriverContext অবজেক্ট তৈরি করুন।

    DriverContext driverContext = DriverContext.builder(application)
        .setProviderId(providerId)
        .setVehicleId(vehicleId)
        .setAuthTokenFactory(authTokenFactory)
        .setNavigator(navigator)
        .setRoadSnappedLocationProvider(
            NavigationApi.getRoadSnappedLocationProvider(application))
        .build();
    
  3. *DriverApi শুরু করতে DriverContext অবজেক্ট ব্যবহার করুন।

  4. API অবজেক্ট থেকে NavigationVehicleReporter পান। NavigationVehicleReporter তারিখে *VehicleReporter শেষ হচ্ছে।

লোকেশন আপডেট চালু ও বন্ধ করা

আগের ভার্সনে, আপনি FleetEngine রেফারেন্স পাওয়ার পরে লোকেশন আপডেট চালু করতে পারতেন। Driver SDK v4-এ, লোকেশন আপডেট এইভাবে চালু করুন:

ড্রাইভারের শিফ্ট শেষ হয়ে গেলে, লোকেশন আপডেট বন্ধ করে দিন এবং NavigationVehicleReporter.disableLocationTracking()-এ কল করে গাড়িটিকে অফলাইন হিসেবে চিহ্নিত করুন।

StatusListener-এর মাধ্যমে সমস্যা সংক্রান্ত রিপোর্ট করা

ErrorListener সরিয়ে দেওয়া হয়েছে এবং StatusListener-এর সাথে একত্রিত করা হয়েছে, যা নিম্নলিখিতভাবে সংজ্ঞায়িত করা যেতে পারে:

class MyStatusListener implements StatusListener {
  /** Called when background status is updated, during actions such as location reporting. */
  @Override
  public void updateStatus(
      StatusLevel statusLevel, StatusCode statusCode, String statusMsg) {
    // Status handling stuff goes here.
    // StatusLevel may be DEBUG, INFO, WARNING, or ERROR.
    // StatusCode may be DEFAULT, UNKNOWN_ERROR, VEHICLE_NOT_FOUND,
    // BACKEND_CONNECTIVITY_ERROR, or PERMISSION_DENIED.
  }
}