Прежде чем использовать Driver SDK, необходимо инициализировать Navigation SDK и Driver SDK, выполнив следующие действия:
Получите объект
NavigatorизNavigationApi.Java
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; } } );Kotlin
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.Java
DriverContext driverContext = DriverContext.builder(application) .setProviderId(providerId) .setVehicleId(vehicleId) .setAuthTokenFactory(authTokenFactory) .setNavigator(navigator) .setRoadSnappedLocationProvider( NavigationApi.getRoadSnappedLocationProvider(application)) .build();Kotlin
val driverContext = DriverContext.builder(application) .setProviderId(providerId) .setVehicleId(vehicleId) .setAuthTokenFactory(authTokenFactory) .setNavigator(navigator) .setRoadSnappedLocationProvider(NavigationApi.getRoadSnappedLocationProvider(application)) .build()Используйте объект
DriverContext, чтобы инициализировать*DriverApi.DeliveryDriverApi driverApi = DeliveryDriverApi.createInstance(driverContext);Получите объект
DeliveryVehicleReporterиз объекта API. (DeliveryVehicleReporterрасширяетNavigationVehicleReporter).DeliveryVehicleReporter vehicleReporter = driverApi.getDeliveryVehicleReporter();
Примечания о SSL/TLS
Для безопасного обмена данными с сервисом Fleet Engine в Driver SDK используется протокол SSL/TLS. Для Android API версии 23 и более ранних может потребоваться исправление SecurityProvider, чтобы обеспечить связь с сервером. Дополнительную информацию о работе с SSL в Android можно найти в статье Security GMS Provider (Поставщик GMS для обеспечения безопасности).
В статье также приведены примеры кода для обновления поставщика услуг безопасности.