Android 4.0 sürümü için Sürücü SDK'sını kullanmak istiyorsanız belirli işlemler için kodunuzu 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
öğesindenNavigator
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çinDriverContext
nesnesini kullanın.API nesnesinden
NavigationVehicleReporter
değerini alın.*VehicleReporter
uzatılıyorNavigationVehicleReporter
.
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.
}
}