Android
[ 2.9.0 ] - 2024/12/16
Changed
TripAnalysis: Add callbacks to the TripListener to improve monitoring of trip recording states.
Fixed
TripAnalysis: Clear trip metadata when DriveKit is reset.
[ 2.8.0 ] - 2024/12/03
Fixed
TripAnalysis: handling a
ForegroundServiceStartNotAllowedException
error which can occur even if exemptions from background start restrictions are respected.
Deprecated
TripAnalysis: the object
account
has been deprecated inPostGenericResponse
.
[ 2.7.3 ] - 2024/11/26
Fixed
Project: Improve migration code managing an occasional migration error occurring when the SDK is integrated into a minified application.
[ 2.7.2 ] - 2024/11/21
Fixed
Core: Prevent requests from using cache.
Core: Improve the way of deserializing objects from GSON.
[ 2.7.1 ] - 2024/11/19
Fixed
Project: Update ProGuard rules to fix minification issues.
[ 2.7.0 ] - 2024/11/05
Added
TripAnalysis: Add a new method
getCurrentTripInfo()
to retrieve some information about the current trip. Follow this link to learn more.
getCurrentStartMode()
and getCurrentTripStartDate()
methods on DriveKitTripAnalysis module are deprecated and will be removed at the end of 2025. Please use getCurrentTripInfo()
method instead.
[ 2.6.0 ] - 2024/10/22
Added
TripAnalysis: Add a new method to retrieve the arrival location of the last trip:
getLastTripLocation()
. Follow this link to learn more.TripAnalysis: The
getLastTripPoint(): TripPoint?
method is now deprecated and replaced bygetLastTripPointOfCurrentTrip(): TripPoint?
. It avoids confusion with the newgetLastTripLocation
method.
[ 2.5.0 ] - 2024/10/15
Changed
Project: The
EncryptedSharedPreferences
library is no longer used in the SDK as it is no longer maintained by Android.TripAnalysis: The
tripFinished(post: PostGeneric, response: PostGenericResponse)
TripListener's callback is now deprecated and replaced bytripFinished(result: TripResult)
. The TripResult makes it easier to understand the trip analysis result from our DriveQuant servers.
[ 2.4.4 ] - 2024/11/22
Fixed
Core: Prevent requests from using cache.
[ 2.4.3 ] - 2024/09/17
Fixed
Project: New ProGuard rules have been added to avoid obfuscation of useful classes. This update is important if you have enabled minification in your application.
[ 2.4.2 ] - 2024/09/12
Fixed
Core: In some rare cases, calling the methods
enableLogging
/disableLogging
can interrupt the SDK initialization.TripAnalysis: Avoid interruptions in trip recording that could be caused by a problem with the
EncryptedSharedPreferences
library.
[ 2.4.1 ] - 2024/08/28
Fixed
Core: Better management of diagnosis data backup in case of changes in minification rules.
[ 2.4.0 ] - 2024/07/31
Changed
DriveKit is now targeting Android 15 (API level 35). It is recommended to check our migration guide and the Android documentation.
ProGuard rules have been added to handle enabled code minification in client app configuration.
DriverAchievement: The LEGACY RankingPeriod is deprecated and will be removed in early 2025.
Challenge: Challenge list sync service has been enhanced to be up to 20x faster.
[ 2.3.1 ] - 2024/11/22
Fixed
Core: Prevent requests from using cache.
[ 2.3.0 ] - 2024/06/19
Changed
Core: Updated version of the
security-crypto
library to prevent ANR events on Android 12 devices.
Fixed
Core: AutoReset permission value was inverted in
DKDeviceConfigurationListener
.TripAnalysis: Fix of a rare crash that could occur when the iBeacon scan starts if the Bluetooth sensor has been turned off.
TripAnalysis: Fix a rare crash when the user Bluetooth device class is null during a phone call.
[ 2.2.0 ] - 2024/05/29
Changed
TripAnalysis: Manage Full Screen Intent runtime permission which can be revoked by the Google Play Store for apps on Android 14+ devices that do not have calling or alarm functionalities. If you are using the Crash Detection Feedback feature, have a check about the dedicated section.
[ 2.1.0 ] - 2024/05/20
Changed
DriverAchievement: We have updated statistics of badges to get more details: acquired, remaining and total number of badges for each level (bronze, silver and gold).
[ 2.0.2 ] - 2024/05/02
Fixed
TripAnalysis: On rare occasions, an error in calculating the variance of the gyroscope can interrupt trip recording and collision detection.
[ 2.0.1 ] - 2024/04/18
Fixed
TripAnalysis: The bluetooth sensor could be unexpectedly turned off at the end of a trip for devices on Android 12 and below.
[ 2.0.0 ] - 2024/04/10
This is a major version of the DriveKit SDK.
There is no breaking changes, except the deletion of methods and properties already marked as deprecated for more than a year.
Added
TripSimulator: Add the new
TRIP_WITH_CRASH_2_STILL_DRIVING
dataset to simulate a trip with a confirmed accident after which the driver continues to drive. Learn more here.
Deleted
Core: The deprecated property
listener
is now deleted.TripAnalysis: The deprecated
setVehicle(vehicle: Vehicle)
method is now deleted and replaced bysetVehicle(vehicle: TripVehicle)
DriverData: Deprecated methods
saveTrainTrip(…)
andgetTimelines()
are now deleted.
Changed
Project: The internal modules are now automatically initialized. It means that you no longer have to initialize the modules in the
onCreate
method of yourApplication
class. Read more via the Quick start part.DriverData: Add new
ignoreItemsWithoutTripScored
parameter forgetDriverTimelines()
method. If set totrue
, the returned timeline data will not contain items (DKAllContextItem and DKRoadContextItem) where there are only unscored trips. Learn more here.
Deleted
Core: The deprecated
delegate
is now deleted.DriverData: Deprecated methods
saveTrainTrip(…)
andgetTimelines()
are now deleted.
[ 1.41.1 ] - 2024/11/22
Fixed
Core: Prevent requests from using cache.
[ 1.41.0 ] - 2024/02/07
Changed
TripAnalysis: From this version, the callback tripPoint() is also triggered during the stopping state.
TripAnalysis: In addition to phone compatibility,
isCrashDetectionAvailable
now measures whether the accelerometer is working properly and whether access to the crash detection feature is enabled. Read more.DriverAchievement: New method to get the number of badges: total number, number of badges collected and number of badges remaining. Read more.
Fixed
Project: Better management of parallel synchronisation for trip list, vehicle list, challenge list and coaching message.
[ 1.40.1 ] - 2024/01/19
Changed
Project: Update Kotlin version to 1.8.22, Android Gradle Plugin to 8.1.4 and Gradle to 8.3.
Vehicle: DriveKit accepts new values for engine index parameters: Biofuel (6), Bi-fuel gasoline bioethanol (7), Dual-fuel gasoline NGV (8), Dual-fuel gasoline LPG (9), Not available (10) and Hydrogen (12).
Challenge : Update challenge list by adding number of registered and number of ranked users for a given challenge. The rank of the user is also provided. See Challenge.
Challenge: Update challenge detail by adding number of registered users for a given challenge. The booleans isRegistered and conditionsFilled has also been added. See ChallengeDetail.
DriveKit now requires JDK 17.
Added
TripAnalysis: Add the
getTripResponseStatus()
method to ease the access to the status and data of a completed trip. See Get the trip response status.Vehicle: Documentation of the main methods included in the DriveKit internal component Vehicle
[ 1.39.2 ] - 2024/06/12
Fixed
Core: Fix incorrect state value for AutoReset permission when
DKDeviceConfigurationListener.onDeviceConfigurationChanged(event: DKDeviceConfigurationEvent)
callback is triggered: theisValid
returned value was inverted.
[ 1.39.1 ] - 2024/05/03
Fixed
TripAnalysis: On rare occasions, an error in calculating the variance of the gyroscope can interrupt trip recording and collision detection.
[ 1.39.0 ] - 2023/12/06
Changed
TripAnalysis: New log message to indicate when trip analysis is postponed because the smartphone has no internet connection.
TripAnalysis: Some
TripListener
methods are now optional:tripPoint
,beaconDetected
,potentialTripStart
,crashDetected
andcrashFeedbackSent
. If you don't use these methods, there's no need to override them.
Fixed
TripAnalysis: Improve Bluetooth device verification during a trip recording.
[ 1.38.0 ] - 2023/11/07
Added
Core: Add new
DKDeviceConfigurationListener
to get informed when permissions and sensors status have changed. Read more.
onDeviceConfigEvent()
method in TripListener
is deprecated and will be removed in a future version. Please use DKDeviceConfigurationListener
instead.
Fixed
TripAnalysis: Fixed a crash that could occur on Android 14 if the location sensor is deactivated before the start of a trip recording.
TripAnalysis: In rare cases, IMU data vectors (pitch, roll and yaw) may have different sizes to GPS data vectors.
Changed
TripAnalysis:
crashDetected()
callback can be called even ifenableCrashFeedback
is disabledCore: Improved logs with an information message if the Core, TripAnalysis or DriverData modules are initialized multiple times.
Update Gradle configuration to avoid overriding the
sdkStateChanged
method in theTripListener
interface.
[ 1.37.0 ] - 2023/10/19
Fixed
TripAnalysis: Fix a crash that may occur if the location permission is revoked during a trip analysis.
TripAnalysis: The callback
tripStarted
is now called when a trip StartMode is MANUAL.
Changed
Vehicle: Add Plug-in hybrid gasoline engine index.
DriveKitListeners or TripListeners are no longer stored as weak references. This change enables the registration of anonymous classes.
[ 1.36.1 ] - 2023/10/04
Fixed
TripAnalysis: Fixed a minor bug that blocked the simulation of a trip with a collision.
[ 1.36.0 ] - 2023/09/14
Added
Core: DriveKit detects critical changes that can disrupt trip recording (permissions status, sensors and user logout). This information is included in the diagnostic log file and shared with the DriveQuant platform.
Vehicle: New service to replace a vehicle.
Fixed
TripAnalysis: Check if background location is authorized on Android 14+ devices before starting a trip recording.
[ 1.35.2 ] - 2023/08/09
Breaking changes
TripAnalysis: In the
DeviceConfigEvent
sealed class:BLUETOOTH_SENSOR_STATE_CHANGED
has been renamed toBluetoothSensorStateChanged
GpsSensorStateChanged
has been added to monitor when GPS sensor has been turned on and off.
Changed
DriveKit is now targeting Android 14 (API level 34). It is recommended to check our migration guide and the Android documentation.
TripAnalysis: Upgrade Play Services Location to v21.0.1
[ 1.34.0 ] - 2023/07/17
Added
DriverData: The DriveData component includes detailed data describing the user's profile. The driver's profile is based on driving habits.
Breaking changes
The DKDay enum has been moved from TripAnalysis to Core.
[ 1.33.0 ] - 2023/06/12
Added
TripAnalysis: DriveKit can use the connection between the smartphone and an Android Auto system to initiate a trip recording.
Changed
TripAnalysis: Several
TripListener
can now be added independently and after module initialization. This makes it easier to use multiple trip listeners in your project if you need more than one..
[ 1.32.0 ] - 2023/05/23
Changed
TripAnalysis: Improve vehicle configuration.
[ 1.31.2 ] - 2023/05/17
Fixed
TripAnalysis: Fixed
TripPoint
incorrectdistance
computation value in rare cases.
[ 1.31.1 ] - 2023/05/05
Added
DriverData: The timeline data has been extended to include the variables needed to display driving conditions: distance category of trips, weather, day/night trips and week/weekend trips.
[ 1.30.0 ] - 2023/03/27
Breaking changes
TripAnalysis: We have simplified the message that informs that a trip has been cancelled. For that, a new method
tripCancelled()
has been added inTripListener
(Read more)
Fixed
TripAnalysis: Fixed a rare issue of concurrent access on the gyrometer sensor recording for the crash detection feature.
Core: Improve DriveKitLog content and management.
[ 1.29.4 ] - 2023/02/21
Fixed
TripAnalysis: Smartphones with facial recognition are better handled for the computation of the distraction score.
[ 1.29.1 ] - 2023/02/06
Added
TripAnalysis: Add
allowBeaconTripStart
parameter to disable beacon trip start (Read more).TripAnalysis: Improve temporary save trip mechanism when a beacon or a Bluetooth device is required.
TripAnalysis: Logging of trip cancellation mode when the Bluetooth device is missing and improved detection of the Bluetooth device when a trip confirmation is in progress.
Changed
Core: Secure storage of sensitive data using
EncryptedSharedPreferences
.Core: Display an explicit error message in logcat when DriveKit is not correctly initialized.
DriverData: Trip synchronisation time was significantly reduced.
[ 1.28.0 ] - 2023/01/16
Changed
Project: The minimum version supported by DriveKit is now Android 6.0 Marshmallow (API 23).
DriverData: Add fuelSaving values into Timeline
[ 1.27.2 ] - 2022/12/09
Added
TripAnalysis: Add a method to get the startMode of the current trip
[ 1.27.1 ] - 2022/11/24
Changed
Project: Remove the
allowBackup
flag. Read more on the official Android documentation
[ 1.27.0 ] - 2022/10/17
Fixed
TripAnalysis: Check
ACTIVITY_RECOGNITION
runtime permission is granted by the user before initializing the auto start mode
Changed
Project: Update Play Services to 20.0.0
Added
TripAnalysis: New configuration to cancel or enable trip recording when the Bluetooth device paired with a vehicle is not connected to the smartphone.
Core: Add a function to delete a user account
Group: New module to manage driver’s groups
[ 1.26.0 ] - 2022/08/29
Breaking changes
All DriveKit components support Android 13. It is recommended to check the Android documentation.
Added
Permissions utils : Android 13 permission support. See the Notification Runtime Permission section.
TripSimulator: The trip simulator can emulate a bus trip to test the transportation mode detection service.
Changed
DriveKit is now targeting Android 13 (API level 33)
TripAnalysis: Added a listener the change of the state of the Bluetooth sensor (enabled/disabled)
[ 1.25.1 ] - 2022/07/27
Fixed
TripAnalysis: Fixed a rare glitch when recording gyroscope measurements on some Android smartphones
[ 1.25.0 ] - 2022/07/20
Changed
Vehicle: We have improved error messages and synchronisation in the case of deleted vehicles.
[ 1.24.0 ] - 2022/07/01
Changed
BeaconUtils: The module can now be configured to support multiple beacon types.
TripAnalysis: The beacon's battery level is measured at each trip.
[ 1.23.0 ] - 2022/06/14
Fixed
Core: Improve DriveKit initialization: the
access
service is not called until the userId is not configured.
Changed
DriverData: Added speeding duration, speeding distance and ecodriving sub-scores into the timeline data.
DriverData: Added energy and energy consumption for electric vehicles.
[ 1.22.2 ] - 2022/05/18
Changed
TripSimulator: Update of PresetTrip distance and duration information.
[ 1.22.1 ] - 2022/05/17
Changed
TripAnalysis: Handle a crash that may happen when the device has rebooted and if DriveKit is not initialized.
[ 1.22.0 ] - 2022/05/11
Added
TripAnalysis: Add method tripFinished() in TripListener which is called when a trip has been recorded by the SDK and sent to DriveQuant server for analysis. More details here.
DatabaseUtils: Add a method on
TransportationMode
to indicate whether or not it is an alternative travel mode.
Fixed
TripAnalysis: Fix a ConcurrentModificationException that may happen during gyroscope computation value.
[ 1.21.0 ] - 2022/04/20
Changed
TripAnalysis: Improved reverse geocoding of departure and arrival addresses.
Fixed
TripAnalysis: In Crash Detection, handle
NaN
values in gyroscope variance computation.Vehicle: Update vehicle in local database when
changeBeaconToVehicle(…)
is called.
[ 1.20.0 ] - 2022/04/11
Changed
TripAnalysis: The "working hours" feature brings more flexibility and lets you choose to label as business or personal a trip performed during an unchecked day.
TripAnalysis: Improve phone distraction detection.
Trip analysis: The collection of GPS data around the collision detection event has been improved.
[ 1.19.2 ] - 2022/04/07
Fixed
All DriveKit components: Fix an issue when saving an existing trip in local database.
[ 1.19.1 ] - 2022/03/31
Fixed
Core: Fix a crash that can occur when retrieving DriveKitLog zip files at the end of the month.
[ 1.19.0 ] - 2022/03/23
Added
TripAnalysis: All DriveKit users can now get a built-in crash detection feature integrated in the Trip Analysis component. This function analyzes the motion sensors during the trip recording to detect a collision.
TripSimulator: Add a new trip with a crash to simulate an accident.
Changed
DatabaseUtils: Update Room library version to v2.4.1.
All DriveKit components: To better understand the SDK lifecycle and to help you check your integration we have enriched and improved the activity logs.
[ 1.18.0 ] - 2022/01/24
Added
TripAnalysis: add a working hours management feature to control the time period in which automatic trip recording is enabled.
[ 1.17.0 ] - 2022/01/10
Added
DriverAchievement: New phone call badge to encourage drivers to reduce distracted driving.
[ 1.16.0 ] - 2021/12/06
Added
DriverAchievement: Add calls in streaks.
[ 1.15.1 ] - 2021/11/23
Changed
Core: Activate logs by default.
[ 1.14.1 ] - 2021/10/29
Fixed
Trip Analysis: Manage cases when Nearby Devices permissions is not authorized yet.
[ 1.14.0 ] - 2021/10/14
Added
Core : Sensors availability are now returned in authentication service.
Driver Data : Add functions to manage manual trips.
[ 1.13.2 ] - 2021/10/05
Breaking changes
All DriveKit components now support Android 12. It is recommended to check the Android documentation.
External libraries in DriveKit now require Java 8. If you run into any issues, please check the Android documentation.
[ 1.13.1 ] - 2021/09/22
Fixed
Core : Handle nullable address locality in reverse geocoder
[ 1.13.0 ] - 2021/09/08
Changed
DriverData: Better management of reverse geocoding
[ 1.12.2 ] - 2021/07/22
Added
New driveKit Component to implement a driving challenge in your app.
Changed
The minimum version supported by DriveKit is now Android 5.0 Lollipop (API 21).
[ 1.11.3 ] - 2021/05/24
Fixed
Trip Analysis : improved initialization of localTripId when the application has been killed by a manufacturer battery optimization.
[ 1.11.2 ] - 2021/05/07
Fixed
Trip Analysis: Manage phone calls during StartingState
[ 1.11.0 ] - 2021/04/05
Added
Driver Data: Synchronize speeding data in local database
Changed
Trip Analysis: Optimized local database synchronization for new trip
[ 1.10.0 ] - 2021/03/03
Added
Driver Data: phone distraction indicators update (new scoring and call events)
Changed
Driver Data: Improved deleted trip synchronisation if the user is connected to multiple smartphones.
General : AndroidX libraries update.
[ 1.9.0 ] - 2021/01/20
Added
Trip Analysis: Retrieving new data for the identification of distracted driving.
Driver Data : Add function to declare transportation mode.
Driver Data : Synchronize maneuver and evaluation with trips.
[ 1.8.0 ] - 2020/11/26
Fixed
DriverData : Remove DriveQuant Google API Key in AndroidManifest.xml
Added
Driver Data: The driver synthesis data and timeline of scores can be synchronised and used from the Driver Data component.
Trip Analysis: It is now possible to add specific data within a trip's post
[ 1.7.0 ] - 2020/10/28
Added
Trip Simulator: We have introduced a new component able to simulate trips in order to help your mobile app testings
[ 1.6.2 ] - 2020/10/22
Added
Driver Achievement: A new ranking score (speed limit) can be displayed on the driver leaderboard.
Trip Simulator: We have introduced a new component able to simulate trips in order to help your mobile app testings
Trip Analysis: Handle an error that may occur when a trip is manually stopped
Changed
Driver Data: By default, the trip list shows only the trips made in vehicles. A configuration parameter enables the display of the trips detected in alternative transportation modes
Fixed
Trip Analysis: Handle an error that may occur when a trip is manually stopped
[ 1.6.1 ] - 2020/09/22
Changed
All DriveKit components are now compatible with Android 11
Fixed
Trip Analysis: In some cases vehicle is not correctly configured
[ 1.6.0 ] - 2020/08/26
Added
DriverAchievement: New feature Rankings
TripAnalysis: Enhancement of automatic trip recording by geozone detection
[ 1.5.1 ] - 2020/07/07
Added
TripAnalysis: New public method to check and manually repost trips
TripAnalysis: Improved detection of bicycle mobility
[ 1.5.0 ] - 2020/06/24
Added
DriverAchievement: New feature for collection of driving badges.
Vehicle: New feature to set-up a truck
Changed
TripAnalysis: Improve Bluetooth device detection check during the trip
Vehicle: Add new car brands
Fixed
Core: Update the refresh token mechanism
DatabaseUtils: Manage trips without phone distraction indicators
[ 1.4.2 ] - 2020/05/20
Fixed
Vehicle component: Vehicles synchronization now manages odometers' deleted references
TripAnalysis component: vehiclesConfigTakeOver parameter is correctly saved in SharedPreferences and reset when necessary
Changed
Core: Improve logging system
[ 1.4.0 ] - 2020/04/20
Added
New Vehicle component: Manage vehicle synchronization with local database, detection mode configuration of vehicle, and functions to pair a beacon or a bluetooth device to the vehicle
Core: Add log configuration to remove log from console
[ 1.3.1 ] - 2020/03/27
Changed
Trip Analysis: Update share position service with canceled events
[ 1.3.0 ] - 2020/03/06
Added
New Driver Achievement SDK with streak features
[ 1.2.3 ] - 2020/03/02
Added
Trip Analysis: Add optional sdkStateChanged method on TripListener
Fixed
Trip Analysis: Fix ItineraryStatistics parsing for day and weekDay fields
[ 1.2.0 ] - 2020/01/17
Added
Trip Analysis: The autostart feature supports Bluetooth vehicle detection. More detail here.
[ 1.1.6 ] - 2019/12/17
Added
Trip Analysis: Notification channel name and id of trip recording foreground notification are now configurable for device running Android 8 or higher
Trip Analysis: Add beacon detection for pre-Lollipop devices
[ 1.1.4 ] - 2019/11/26
Fixed
Core: Logging system compatibilty with Android 10
Trip Analysis: Fix IllegalStateException when some error messages are null
[ 1.1.3 ] - 2019/11/12
Fixed
Trip Analysis: Beacon verification can failed when only UUID and major is configure
Core: Authentication failed with some userId
[ 1.1.1 ] - 2019/10/31
Added
Driver Data UI: Add setting to customize the primary font:
primaryFont
Driver Data UI: Add setting to display/hide the delete trip button:
enableDeleteTrip
Added a screen for displaying driving tips.
[ 1.1.0 ] - 2019/10/25
Added
Add Driver Data SDK for Driver's trips synchronisation.
Add Driver Data UI for trip display.
[ 1.0.1 ] - 2019/10/10
Fixed
Calling startTrip method may generate an exception
Trip Analysis SDK throws an exception when launched on Android virtual devices
Added
Support of Android 10
[ 1.0.0 ] - 2019/09/16
Changed
Release version of the Trip Analysis SDK.
Added
New interface to retrieve the detected beacon event before the start of the trip.
Add method to get the SDK recorder state.
[ 1.0.0 - beta 1 ] - 2019/09/09
Added
Trip Analysis SDK is now available in beta version
Last updated