Android Sürücü SDK'sı 4.0 Taşıma Kılavuzu
Koleksiyonlar ile düzeninizi koruyun
İçeriği tercihlerinize göre kaydedin ve kategorilere ayırın.
Android 4.0 sürümü için Sürücü SDK'sını kullanmak üzere kodunuzu belirli işlemler için güncellemeniz gerekir. Bu kılavuzda değişiklikler ve kodunuzu taşımak için yapmanız gerekenler açıklanmaktadır.
Paket adı değişikliği
Paket adı com.google.android.libraries.ridesharing.driver
iken com.google.android.libraries.mapsplatform.transportation.driver
olarak değiştirildi. Lütfen kodunuzdaki referansları güncelleyin.
SDK'yı Başlatma
Önceki sürümlerde Navigation SDK'yı başlatır ve ardından FleetEngine
sınıfına referans alırdınız. Sürücü SDK'sı v4'te SDK'yı aşağıdaki gibi başlatın:
NavigationApi
öğesinden Navigator
nesnesi alın.
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;
}
}
);
Gerekli alanları doldurarak bir DriverContext
nesnesi oluşturun.
DriverContext driverContext = DriverContext.builder(application)
.setProviderId(providerId)
.setVehicleId(vehicleId)
.setAuthTokenFactory(authTokenFactory)
.setNavigator(navigator)
.setRoadSnappedLocationProvider(
NavigationApi.getRoadSnappedLocationProvider(application))
.build();
*DriverApi
öğesini başlatmak için DriverContext
nesnesini kullanın.
API nesnesinden NavigationVehicleReporter
değerini alın.
*VehicleReporter
uzatılıyor NavigationVehicleReporter
.
Konum güncellemelerini etkinleştirme ve devre dışı bırakma
Önceki sürümlerde, FleetEngine
referansı aldıktan sonra konum güncellemelerini etkinleştirirdiniz. Sürücü SDK'sı v4'te konum güncellemelerini aşağıdaki şekilde etkinleştirin:
Sürücünün vardiyası bittiğinde konum güncellemelerini devre dışı bırakın ve NavigationVehicleReporter.disableLocationTracking()
numaralı telefonu arayarak aracı çevrimdışı olarak işaretleyin.
StatusListener ile hata raporlama
ErrorListener
kaldırıldı ve StatusListener
ile birleştirildi. StatusListener
aşağıdaki gibi tanımlanabilir:
class MyStatusListener implements StatusListener {
/** Called when background status is updated, during actions such as location reporting. */
@Override
public void updateStatus(
StatusLevel statusLevel, StatusCode statusCode, String statusMsg) {
// Status handling stuff goes here.
// StatusLevel may be DEBUG, INFO, WARNING, or ERROR.
// StatusCode may be DEFAULT, UNKNOWN_ERROR, VEHICLE_NOT_FOUND,
// BACKEND_CONNECTIVITY_ERROR, or PERMISSION_DENIED.
}
}
Aksi belirtilmediği sürece bu sayfanın içeriği Creative Commons Atıf 4.0 Lisansı altında ve kod örnekleri Apache 2.0 Lisansı altında lisanslanmıştır. Ayrıntılı bilgi için Google Developers Site Politikaları'na göz atın. Java, Oracle ve/veya satış ortaklarının tescilli ticari markasıdır.
Son güncelleme tarihi: 2025-09-05 UTC.
[null,null,["Son güncelleme tarihi: 2025-09-05 UTC."],[[["\u003cp\u003eDriver SDK for Android v4 requires code updates for operations like package name and initialization.\u003c/p\u003e\n"],["\u003cp\u003eThe package name has changed to \u003ccode\u003ecom.google.android.libraries.mapsplatform.transportation.driver\u003c/code\u003e.\u003c/p\u003e\n"],["\u003cp\u003eSDK initialization now involves obtaining a \u003ccode\u003eNavigator\u003c/code\u003e, creating a \u003ccode\u003eDriverContext\u003c/code\u003e, and initializing the \u003ccode\u003e*DriverApi\u003c/code\u003e.\u003c/p\u003e\n"],["\u003cp\u003eLocation updates are enabled and disabled using the \u003ccode\u003eNavigationVehicleReporter\u003c/code\u003e methods.\u003c/p\u003e\n"],["\u003cp\u003eError reporting is now handled through the \u003ccode\u003eStatusListener\u003c/code\u003e which replaces the \u003ccode\u003eErrorListener\u003c/code\u003e.\u003c/p\u003e\n"]]],[],null,["The Driver SDK for Android 4.0 release requires that you update your code\nfor certain operations. This guide outlines the changes and what\nyou'll need to do to migrate your code.\n\nPackage name change\n\nThe package name has changed from\n`com.google.android.libraries.ridesharing.driver` to\n`com.google.android.libraries.mapsplatform.transportation.driver`. Please\nupdate references in your code.\n\nInitializing the SDK\n\nIn earlier versions, you would initialize the Navigation SDK and then obtain\na reference to the `FleetEngine` class. In Driver SDK\nv4, initialize the SDK as follows:\n\n1. Obtain a `Navigator` object from the `NavigationApi`.\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\n2. Create a `DriverContext` object, populating the required fields.\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\n3. Use the `DriverContext` object to initialize the `*DriverApi`.\n\n4. Obtain the `NavigationVehicleReporter` from the API object.\n `*VehicleReporter` extends `NavigationVehicleReporter`.\n\nEnabling and disabling location updates\n\nIn earlier versions, you would enable location updates after obtaining\na `FleetEngine` reference. In Driver SDK v4, enable\nlocation updates as follows:\n\nWhen the driver's shift is finished, disable location updates\nand mark the vehicle as offline by calling `NavigationVehicleReporter.disableLocationTracking()`.\n\nError Reporting with StatusListener\n\n`ErrorListener` has been removed and combined with `StatusListener`,\nwhich may be defined like the following: \n\n class MyStatusListener implements StatusListener {\n /** Called when background status is updated, during actions such as location reporting. */\n @Override\n public void updateStatus(\n StatusLevel statusLevel, StatusCode statusCode, String statusMsg) {\n // Status handling stuff goes here.\n // StatusLevel may be DEBUG, INFO, WARNING, or ERROR.\n // StatusCode may be DEFAULT, UNKNOWN_ERROR, VEHICLE_NOT_FOUND,\n // BACKEND_CONNECTIVITY_ERROR, or PERMISSION_DENIED.\n }\n }"]]