Inicializa el SDK del controlador
Organiza tus páginas con colecciones
Guarda y categoriza el contenido según tus preferencias.
Antes de usar el SDK de Driver, primero debes inicializar el SDK de Navigation y el SDK de Driver siguiendo estos pasos:
Obtén un objeto Navigator
del 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
}
},
)
Crea un objeto DriverContext
y completa los campos obligatorios. Para inicializar el objeto DriverContext
, debes ingresar el ID del proyecto de tu proyecto de Google Cloud como providerId
. Para obtener información sobre cómo configurar el proyecto de Google Cloud, consulta Crea tu proyecto de 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()
Usa el objeto DriverContext
para inicializar el *DriverApi
.
DeliveryDriverApi driverApi = DeliveryDriverApi.createInstance(driverContext);
Obtén el objeto DeliveryVehicleReporter
del objeto de la API.
(DeliveryVehicleReporter
extiende NavigationVehicleReporter
).
DeliveryVehicleReporter vehicleReporter = driverApi.getDeliveryVehicleReporter();
Notas sobre SSL/TLS
Internamente, la implementación del SDK de Driver usa SSL/TLS para comunicarse de forma segura con el servicio de Fleet Engine. Las versiones 23 o anteriores de la API de Android pueden requerir un parche de SecurityProvider
para comunicarse con el servidor. Para obtener más información sobre cómo trabajar con SSL en Android, consulta Security GMS Provider.
El artículo también contiene muestras de código para aplicar parches al proveedor de seguridad.
¿Qué sigue?
Prepara el vehículo
Salvo que se indique lo contrario, el contenido de esta página está sujeto a la licencia Atribución 4.0 de Creative Commons, y los ejemplos de código están sujetos a la licencia Apache 2.0. Para obtener más información, consulta las políticas del sitio de Google Developers. Java es una marca registrada de Oracle o sus afiliados.
Última actualización: 2025-08-31 (UTC)
[null,null,["Última actualización: 2025-08-31 (UTC)"],[[["\u003cp\u003eBefore using the Driver SDK, you must initialize both the Navigation SDK and the Driver SDK.\u003c/p\u003e\n"],["\u003cp\u003eTo begin, obtain a \u003ccode\u003eNavigator\u003c/code\u003e object from the \u003ccode\u003eNavigationApi\u003c/code\u003e and create a \u003ccode\u003eDriverContext\u003c/code\u003e object, ensuring your Google Cloud Project ID is included.\u003c/p\u003e\n"],["\u003cp\u003eInitialize the \u003ccode\u003e*DriverApi\u003c/code\u003e using the \u003ccode\u003eDriverContext\u003c/code\u003e, and obtain the \u003ccode\u003eDeliveryVehicleReporter\u003c/code\u003e from it.\u003c/p\u003e\n"],["\u003cp\u003eNote that the Driver SDK uses SSL/TLS for secure communication, and you might require a \u003ccode\u003eSecurityProvider\u003c/code\u003e patch for older Android versions.\u003c/p\u003e\n"]]],[],null,["# Initialize the Driver SDK\n\nBefore using the Driver SDK, you must first initialize\nthe Navigation SDK and Driver SDK following these steps:\n\n1. Obtain a `Navigator` object from the `NavigationApi`.\n\n ### Java\n\n NavigationApi.getNavigator(\n this, // Activity\n new NavigationApi.NavigatorListener() {\n @Override\n public void onNavigatorReady(Navigator navigator) {\n // Keep a reference to the Navigator (used to configure and start nav)\n this.navigator = navigator;\n }\n }\n );\n\n ### Kotlin\n\n NavigationApi.getNavigator(\n this, // Activity\n object : NavigatorListener() {\n override fun onNavigatorReady(navigator: Navigator) {\n // Keep a reference to the Navigator (used to configure and start nav)\n this@myActivity.navigator = navigator\n }\n },\n )\n\n2. Create a `DriverContext` object, populating the required fields. To\n initialize the `DriverContext` object, you must enter the **Project ID**\n of your Google Cloud Project as the `providerId`. For information\n on setting up the Google Cloud Project, see\n [Create your Fleet Engine project](/maps/documentation/mobility/fleet-engine/essentials/set-up-fleet/create-project).\n\n ### Java\n\n DriverContext driverContext = DriverContext.builder(application)\n .setProviderId(providerId)\n .setVehicleId(vehicleId)\n .setAuthTokenFactory(authTokenFactory)\n .setNavigator(navigator)\n .setRoadSnappedLocationProvider(\n NavigationApi.getRoadSnappedLocationProvider(application))\n .build();\n\n ### Kotlin\n\n val driverContext =\n DriverContext.builder(application)\n .setProviderId(providerId)\n .setVehicleId(vehicleId)\n .setAuthTokenFactory(authTokenFactory)\n .setNavigator(navigator)\n .setRoadSnappedLocationProvider(NavigationApi.getRoadSnappedLocationProvider(application))\n .build()\n\n3. Use the `DriverContext` object to initialize the `*DriverApi`.\n\n DeliveryDriverApi driverApi = DeliveryDriverApi.createInstance(driverContext);\n\n4. Obtain the `DeliveryVehicleReporter` from the API object.\n (`DeliveryVehicleReporter` extends `NavigationVehicleReporter`.)\n\n DeliveryVehicleReporter vehicleReporter = driverApi.getDeliveryVehicleReporter();\n\nNotes on SSL/TLS\n----------------\n\nInternally, the Driver SDK implementation uses\nSSL/TLS to communicate securely with the Fleet Engine service. Android API\nversions 23 or\nearlier may require a `SecurityProvider` patch to communicate with the\nserver. For more information about working with SSL in Android, see\n[Security GMS Provider](https://developer.android.com/training/articles/security-gms-provider).\nThe article also contains code samples for patching the security provider.\n\nWhat's next\n-----------\n\n[Get the vehicle ready](/maps/documentation/mobility/driver-sdk/scheduled/android/vehicle-ready)"]]