Инициализируйте SDK драйвера

Перед использованием Driver SDK необходимо сначала инициализировать Navigation SDK и Driver SDK, выполнив следующие действия:

  1. Получите объект Navigator из NavigationApi .

    Джава

    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;
          }
        }
    );
    

    Котлин

    NavigationApi.getNavigator(
      this, // Activity
      object : NavigatorListener() {
        override fun onNavigatorReady(navigator: Navigator) {
          // Keep a reference to the Navigator (used to configure and start nav)
          this@myActivity.navigator = navigator
        }
      },
    )
    
  2. Создайте объект DriverContext , заполнив необходимые поля. Чтобы инициализировать объект DriverContext , вы должны ввести идентификатор вашего проекта Google Cloud в качестве providerId . Информацию о настройке проекта Google Cloud см. в разделе Создание проекта Fleet Engine .

    Джава

    DriverContext driverContext = DriverContext.builder(application)
        .setProviderId(providerId)
        .setVehicleId(vehicleId)
        .setAuthTokenFactory(authTokenFactory)
        .setNavigator(navigator)
        .setRoadSnappedLocationProvider(
            NavigationApi.getRoadSnappedLocationProvider(application))
        .build();
    

    Котлин

    val driverContext =
      DriverContext.builder(application)
        .setProviderId(providerId)
        .setVehicleId(vehicleId)
        .setAuthTokenFactory(authTokenFactory)
        .setNavigator(navigator)
        .setRoadSnappedLocationProvider(NavigationApi.getRoadSnappedLocationProvider(application))
        .build()
    
  3. Используйте объект DriverContext для инициализации *DriverApi .

    Джава

    RidesharingDriverApi ridesharingDriverApi = RidesharingDriverApi.createInstance(driverContext);
    

    Котлин

    val ridesharingDriverApi = RidesharingDriverApi.createInstance(driverContext)
    
  4. Получите RidesharingVehicleReporter из объекта API. ( *VehicleReporter расширяет NavigationVehicleReporter .)

    Джава

    RidesharingVehicleReporter vehicleReporter = ridesharingDriverApi.getRidesharingVehicleReporter();
    

    Котлин

    val vehicleReporter = ridesharingDriverApi.getRidesharingVehicleReporter()
    

Примечания по SSL/TLS

Внутри реализация Driver SDK использует SSL/TLS для безопасного взаимодействия со службой Fleet Engine. Android API версии 23 или более ранней может потребовать исправления SecurityProvider для связи с сервером. Дополнительные сведения о работе с SSL в Android см. в разделе Поставщик безопасности GMS . Статья также содержит примеры кода для исправления поставщика безопасности.

Что дальше

Подготовьте автомобиль