Перед использованием Driver SDK необходимо сначала инициализировать Navigation SDK и Driver SDK, выполнив следующие действия:
Получите объект
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 } }, )
Создайте объект
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()
Используйте объект
DriverContext
для инициализации*DriverApi
.Ява
RidesharingDriverApi ridesharingDriverApi = RidesharingDriverApi.createInstance(driverContext);
Котлин
val ridesharingDriverApi = RidesharingDriverApi.createInstance(driverContext)
Получите
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 . Статья также содержит примеры кода для исправления поставщика безопасности.