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 özetlenmektedir.
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, Gezinme SDK'sını başlatır ve ardından FleetEngine sınıfına bir başvuru alırdınız. Sürücü SDK'sı v4'te SDK'yı aşağıdaki gibi başlatın:
NavigationApinesnesinden birNavigatornesnesi edinin.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
DriverContextnesnesi 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çinDriverContextnesnesini kullanın.API nesnesinden
NavigationVehicleReporterdeğerini alın.*VehicleReporteruzatı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. Driver SDK 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 Bildirimi
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.
}
}