Prima di utilizzare l'SDK Driver, devi prima inizializzare l'SDK Navigation e l'SDK Driver seguendo questi passaggi:
Ottieni un oggetto
Navigator
daNavigationApi
.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 } }, )
Crea un oggetto
DriverContext
compilando i campi obbligatori. Per inizializzare l'oggettoDriverContext
, devi inserire l'ID progetto del tuo progetto Google Cloud comeproviderId
. Per informazioni sulla configurazione del progetto Google Cloud, consulta Creare il progetto 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()
Utilizza l'oggetto
DriverContext
per inizializzare*DriverApi
.Java
RidesharingDriverApi ridesharingDriverApi = RidesharingDriverApi.createInstance(driverContext);
Kotlin
val ridesharingDriverApi = RidesharingDriverApi.createInstance(driverContext)
Ottieni
RidesharingVehicleReporter
dall'oggetto API. (*VehicleReporter
estendeNavigationVehicleReporter
.)Java
RidesharingVehicleReporter vehicleReporter = ridesharingDriverApi.getRidesharingVehicleReporter();
Kotlin
val vehicleReporter = ridesharingDriverApi.getRidesharingVehicleReporter()
Note su SSL/TLS
Internamente, l'implementazione dell'SDK del driver utilizza
SSL/TLS per comunicare in modo sicuro con il servizio Fleet Engine. Le versioni 23 o precedenti dell'API Android potrebbero richiedere una patch SecurityProvider
per comunicare con il server. Per ulteriori informazioni sull'uso di SSL in Android, vedi
Provider GMS di sicurezza.
L'articolo contiene anche esempi di codice per l'applicazione di patch al provider di sicurezza.