DriveKit 3.0 migration guide
Migration guide for DriveKit 3.0 on Android platform
What's changed in v3.0?
Introduction
Version 3.0 of the DriveKit SDK contains breaking changes: all methods that were marked as deprecated during the past year have been permanently removed.
This guide lists every removed element alongside its recommended replacement, organized by module.
Following these steps will keep your integration stable and future-proof.
How to use this guide
Each section maps to an SDK module. For every removed element, you'll find:
The exact method, class, or property that was removed
The recommended drop-in replacement to use instead
Module-level reset() Methods
The reset() method has been removed from every individual module. Use DriveKit.reset() as your single reset point across all modules.
DriveKitDriverData.reset()
Call DriveKit.reset()
DriveKitChallenge.reset()
Call DriveKit.reset()
DriveKitCoaching.reset()
Call DriveKit.reset()
DriveKitDriverAchievement.reset()
Call DriveKit.reset()
DriveKitGroup.reset()
Call DriveKit.reset()
DriveKitTripAnalysis.reset()
Call DriveKit.reset()
DriveKitVehicle.reset()
Call DriveKit.reset()
DriveKitTripAnalysis
Several one-off methods have been merged into a single, structured call: getCurrentTripInfo(). This reduces the number of calls you need to make and gives you all the context about the current trip in one place.
getCurrentStartMode(): StartMode?
getCurrentTripInfo() → access startMode
getCurrentTripStartDate(): Date?
getCurrentTripInfo() → access startDate
getLastTripPoint(): TripPoint?
getLastTripPointOfCurrentTrip()
getTripResponseStatus(tripResponse:)
tripFinished(result: TripResult) - see TripResult
isConfigured()
isInitialized property - direct boolean access
TripListener interface — Updated Methods & Types
The TripListener interface has been redesigned for clarity. The new methods provide richer state objects, so you get more context with less code.
Method Replacements
tripStarted(startMode: StartMode)
tripRecordingConfirmed(state: DKTripRecordingConfirmedState)
tripCancelled(cancelTrip: CancelTrip)
tripRecordingCanceled(state: DKTripRecordingCanceledState)
tripFinished(post: PostGeneric, response: PostGenericResponse)
tripFinished(responseStatus: TripResponseStatus)
onDeviceConfigEvent(deviceConfigEvent: DeviceConfigEvent)
DKDeviceConfigurationListener - a dedicated listener interface
Removed Classes & Enums
These types were part of the legacy event model and are no longer needed.
DeviceConfigEvent (class)
Handled by the new DKDeviceConfigurationListener
CancelTrip (enum)
State now lives in DKTripRecordingCanceledState
PostGeneric (class)
No longer needed internally
PostGenericResponse (class)
Replaced by TripResult
RecorderState (class)
Referenced CancelTrip - both are now gone
TripResponseStatus (class)
Replaced by the cleaner TripResult
TripAnalysedReceiver (class)
Use tripFinished() and tripRecordingCanceled() in TripListener instead
TripNotification
The following TripNotification parameters are no longer used by the SDK. Simply remove them from your notification configuration — no replacement needed.
gpsAccuracyContent
Remove the parameter
gpsAccuracyButtonContent
Remove the parameter
highSpeedTripDetectedContent
Remove the parameter
noGpsIconId
Remove the parameter
DriveKitVehicle
These method wrappers have been removed in favor of idiomatic Kotlin property and function access.
VehicleEngineIndex.getValue()
Use .value directly - e.g. VehicleEngineIndex.GASOLINE.value
VehicleEngineIndex.getEnumByName()
Use VehicleEngineIndex.valueOf(name)
DriveKitDriverAchievement
RankingPeriod.LEGACY
No longer used - remove any reference to it
Last updated
Was this helpful?

