iOS
Last updated
Was this helpful?
Last updated
Was this helpful?
Changed
Core: Update the internal networking manager.
Added
TripAnalysis: Added a link to the real-time tracking map in the accident data accessible via object.
Changed
TripAnalysis: Improve beacon and geozone trip detection.
Fixed
TripAnalysis: Fixing too early location access permission requests after app reinstallation.
Added
TripSimulator: A no-op module is now available. Learn more .
Changed
TripAnalysis: Improve logs to make debugging easier.
Fixed
Trip analysis: Enhance beacon mode detection performance for iOS 17+
Fix crashes that may appear specifically during unit tests.
Breaking Changes
iOS 12 is no longer supported.
Fixed
DBTripAccess: Improve concurrency management for database access.
Breaking Changes
Fixed
TripAnalysis: Delay Core Location operations after app launch to avoid rare crashes.
Added
Changed
TripAnalysis: Use the new Beacon API for iOS 17+.
Fixed
Added
getCurrentStartMode()
and getCurrentTripStartDate()
methods on DriveKitTripAnalysis module are deprecated and will be removed at the end of 2025. Please use getCurrentTripInfo()
method instead.
Added
Changed
TripAnalysis: Use the new Geofence API for iOS 17+
Changed
Changed
All DriveKit components now are optimized for iOS 18.
Changed
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.
Fixed
TripAnalysis: Correction of minor offset in trip end date.
Added
Core: Improve notification permission management.
Fixed
TripAnalysis: Fix an issue related to iOS 12 when autoinit is enabled.
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).
Fixed
Core: Fix User Defaults declaration in the Privacy manifest.
Fixed
TripAnalysis: Fix of rare crashes that could occur when accident detection service is called.
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
Changed
Deleted
Core: The deprecated delegate
is now deleted.
DriverData: Deprecated methods saveTrainTrip(…)
and getTimelines()
are now deleted.
Fixed
Core: Fix User Defaults declaration in the Privacy manifest.
Fixed
TripAnalysis: Fix of rare crashes that could occur when accident detection service is called.
Changed
Fixed
TripAnalysis: Fix of rare crashes that could occur if the acceleration values are too high or in the case of concurrent access to a data array.
Changed
TripAnalysis: From this version, the callback tripPoint()
is also triggered during the stopping state.
Fixed
Core: Bluetooth access is only requested when mandatory.
Fixed
Core: Avoid possible conflict between DriveKit and other modules handling multiple UNUserNotificationCenterDelegate
implementations, like Firebase Messaging module for React Native.
Changed
Added
TripAnalysis: Add the config
property to retrieve the current module configuration.
TripAnalysis: Add the getTripResponseStatus()
method to ease the access to the status and data of a completed trip.
Vehicle: Documentation of the main methods included in the DriveKit internal component. See Vehicle
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
, significantLocationChangeDetected
, sdkStateChanged
, potentialTripStart
, crashDetected
and crashFeedbackSent
. If you don't use these methods, there's no need to implement them anymore.
Fixed
TripAnalysis: Store trip listeners as weak references to prevent memory leak.
Added
Changed
Core: Improved logs with an information message if the Core, TripAnalysis or DriverData modules are initialized multiple times.
Changed
Vehicle: Add Plug-in hybrid gasoline engine index.
TripAnalysis: Improved detection of phone distractions.
Added
Changed
All DriveKit components now support iOS 17.
Added
Vehicle: New service to replace a vehicle.
Breaking Changes
iOS 11 is no longer supported.
Added
DriverData: The DriveData component includes detailed data describing the user's profile. The driver's profile is based on driving habits.
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.
Changed
TripAnalysis: Enrich TripVehicle
object.
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.
Fixed
BeaconUtils: Check that the method does not return an empty array of beacons to ensure that the beacon is powered and nearby the smartphone when pairing with the vehicle.
Core: Improve DriveKitLog
content and management.
Vehicle: the changeBeacon
function has been optimized.
Added
TripAnalysis: Improve temporary trip saving mechanism when a beacon or a Bluetooth device is required.
TripAnalysis: Logging of trip cancellation mode when the Bluetooth device is missing
DriverData: Trip synchronisation time was significantly reduced.
Changed
DriverData: Add fuelSaving values into Timeline
Added
TripAnalysis: Add a method to get the startMode of the current trip.
Fixed
TripAnalysis: Fix enabling of autostart mode if activateAutoStart
method was called before the user was connected to DriveKit
Fixed
TripAnalysis: Fix a very rare background crash while monitoring geozone on the main thread during SDK initialization.
Fixed
TripAnalysis: Remove registered geozones on reset.
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
Changed
All DriveKit components now support iOS 16.
TripSimulator: Add bus preset trip.
Breaking Changes
iOS 10 is no longer supported.
ARMv7 is no longer supported.
Bitcode is no longer supported.
Changed
Vehicle: We have improved error messages and synchronisation in the case of deleted vehicles.
Added
BeaconUtils: New module for beacon management (detection, battery level measurement and distance estimation).
Changed
TripAnalysis: The beacon's battery level is measured at each trip.
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.
Fixed
Core: Improve notification management.
Changed
TripSimulator: Update stimuli in the trip simulator.
Added
DBTripAccess: Add a method on TransportationMode
to indicate whether or not it is an alternative travel mode.
Fixed
TripAnalysis: Fix an error that, in a rare case, could lead to a data loss during a trip repost.
Changed
TripAnalysis: Improved reverse geocoding of departure and arrival addresses.
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.
Trip analysis: The collection of GPS data around the collision detection event has been improved.
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
Core: Improve security of sensitive data.
All DriveKit components: To better understand the SDK lifecycle and to help you check your integration we have enriched and improved the activity logs.
Fixed
TripAnalysis: we have improved the measurement of the time and duration for incoming calls used to compute the driver's distraction score.
Added
TripAnalysis: add a working hours management feature to control the time period in which automatic trip recording is enabled.
Added
DriverAchievement: New phone call badge to encourage drivers to reduce distracted driving.
Added
DriverAchievement: Add calls in streaks.
Changed
Core: Activate logs by default.
Added
Core: Sensors availability are now returned in authentication service.
Driver Data: Add functions to manage manual trips.
Changed
All DriveKit components now support iOS 15.
Changed
DriverData: Better management of reverse geocoding.
Added
New DriveKit component to implement a driving challenge in your app.
Fixed
TripAnalysis: Manage phone calls during StartingState.
Added
TripAnalysis: Add configuration to disable motion and fitness permissions.
Added
Driver Data: Synchronize speeding data in local database.
Changed
Trip Analysis: Optimized local database synchronization for new trip.
Added
DriverData: phone distraction indicators update (new scoring and call events).
Changed
DriverData: Improved deleted trip synchronisation if the user is connected to multiple smartphones.
Fixed
TripSimulator: Fix Cocoapods configuration to add missing resources.
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.
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.
Added
Trip Simulator: We have introduced a new component able to simulate trips in order to help your mobile app testings.
Fixed
Build issue using Xcode 12.
Fixed
Modules are accessible from Objective C code.
Added
DriveKit SDK now supports Xcode 12.
Breaking Change
Added
DriverAchievement: New feature Rankings.
Added
DriverAchievement: New feature for collection of driving badges.
Vehicle: New feature to set-up a truck.
Changed
Vehicle: Add new car brands.
Fixed
Trip Analysis: Fix beacon scan validation in manual mode.
Fixed
Trip Analysis: Improved resynchronization of the autostart mode.
Fixed
Trip Analysis: In some cases, car bluetooth is not detected during the trip.
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.
Build version for Xcode 11.4
Trip Analysis: Update share position service with canceled events
Fixed
Trip Analysis: Fix distance calculation in TripPoint returned via TripListener
Added
New Driver Achievement SDK with streak features
Trip Analysis: Add new method in TripListener protocol to get SDK state changed. More detail here.
Changed
DriveKit SDK are now available on Cocoapods master repo, Github path and tag are no longer needed in podfile and dependencies are now automatically managed
Fixed
Core: Fix authentication issue when token is invalid.
Breaking changes
Trip Analysis: Vehicle class becomes TripVehicle class in order to avoid class conflict
Driver Data: Add new module DriveKitDBTripAccess, Trip and Route classes are in this module from now
Added
Trip Analysis: Improve trip detection
Core: Fix reset functions to only erase DriveKit related data
Trip Analysis: In some rare cases SDK stayed stuck in sending state after a cancelled trip
Trip Analysis: Make SDK more robust when beacons configuration is changed
Changed
Driver Data UI: Reduce route loading duration in trip detail view
Trip Analysis: In some cases, beacon seen during trip is not retrieved at the end of a trip.
Trip Analysis: iOS 13 beacon ranging functions no longer works with multiple beacons configured due to iOS limitation. To avoid this limitation, multiple beacons can be configured but they must have the same proximity UUID.
Driver Data UI: Reduce trip detail view loading duration
Trip Analysis: Update beacon ranging functions for iOS 13
Trip analysis: The Location permission is no longer done by the SDK and must be requested from the app.
Build version for Xcode 11.2
Added a screen for displaying driving tips.
Add Driver Data SDK for Driver's trips synchronisation.
Add Driver Data UI for trip display.
Fixed missing CFBundleVersion
Release version of the Trip Analysis SDK.
Improved trip detection.
Reduced automatic start time after a prolonged idle period of the smartphone.
New interface to retrieve the detected beacon event before the start of the trip.
Add method to get the SDK recorder state.
Trip Analysis SDK is now available in beta version
TripAnalysis: the property used to check that the (isCrashDetectionAvailable
) returns False when the SDK is not configured.
DriverData: Update Trip classes to clarify types used for Trip object attributes. See .
TripAnalysis: Add methods to manage the .
TripAnalysis: Add callbacks to the to improve monitoring of trip recording states.
TripAnalysis: Clear trip metadata when DriveKit is .
TripAnalysis: Add a new method getCurrentTripInfo()
to retrieve some information about the current trip. Follow this to learn more.
TripAnalysis: Add a new method to retrieve the arrival location of the last trip: getLastTripLocation()
. Follow this to learn more.
TripAnalysis: The tripFinished(post: PostGeneric, response: PostGenericResponse)
’s callback is now deprecated and replaced by tripFinished(responseStatus: TripResponseStatus)
. The makes it easier to understand the trip analysis result from our DriveQuant servers.
TripSimulator: Add the new tripWithCrashStillDriving
dataset to simulate a trip with a confirmed accident after which the driver continues to drive. Learn more .
Project: The internal modules are now automatically initialized. It means that you no longer have to initialize the modules in the didFinishLaunchingWithOptions
method of your AppDelegate
. Read more via the part.
DriverData: Add new ignoreItemsWithoutTripScored
parameter for getDriverTimelines()
method. If set to true
, the returned timeline data will not contain items ( and ) where there are only unscored trips. Learn more .
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.
DriverAchievement: New method to get the number of badges: total number, number of badges collected and number of badges remaining.
Vehicle: DriveKit accepts new values for : 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: Update challenge detail by adding number of registered users for a given challenge. The booleans isRegistered and conditionsFilled has also been added. See
Core: Add new DKDeviceConfigurationDelegate
to get informed when permissions and sensors status have changed. .
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. Check the to enable this functionality.
TripAnalysis: Add allowBeaconTripStart
parameter to disable beacon trip start ().
We now use the XCFramework distribution format recommended by Apple. For the update we recommend that you follow the method described .
Trip Analysis: The autostart feature supports Bluetooth vehicle detection. More detail .
Driver Data UI: Update UITextView creation to avoid crash using Xcode 11.2 ()
Driver Data UI : Add setting to : primaryFont
Driver Data UI : Add setting to : enableDeleteTrip