LogoLogo
ProductsUse casesDocsSupport
  • Introducing DriveKit
  • DriveKit Guides
  • Get started with drivekit
    • Trip recording lifecycle
    • iOS
      • 🚀Quick start
      • Advanced configurations
      • References
      • iOS DriveKit Demo App
    • Android
      • 🚀Quick start
      • Advanced configurations
      • References
      • Android DriveKit Demo App
      • Android 15 Migration guide
      • Android 14 Migration guide
      • Troubleshooting
  • Trip analysis
    • Introduction
    • iOS
      • Permissions
      • Trip management
      • TripListener
      • Crash Detection
      • Beacon usage
      • Bluetooth usage
      • Custom metadata
      • References (iOS)
    • Android
      • Runtime permissions
      • Trip management
      • TripListener
      • Crash Detection
      • Beacon usage
      • Bluetooth usage
      • Custom metadata
      • References (Android)
    • User interface
      • iOS
        • Get started
        • Working hours
        • Driver alert in case of crash
        • Trip recording widget
        • Location sharing
      • Android
        • Get started
        • Working hours
        • Driver alert in case of crash
        • Trip recording widget
        • Location sharing
    • REST services
      • Trip
      • References
    • Trip Simulator
      • iOS
      • Android
  • PERMISSIONS UTILS
    • Introduction
    • User interface
      • iOS
        • Get started
        • Main configurations
      • Android
        • Get started
        • Main configurations
  • COMMON UI
    • Introduction
    • iOS
      • Get started
    • Android
      • Get started
    • References
  • DRIVER DATA
    • Introduction
    • iOS
      • Get started
      • References (iOS)
    • Android
      • Get started
      • References (Android)
    • User interface
      • iOS
        • Get started
        • Advanced configurations
        • Trips widgets
        • My Synthesis
        • My Driver Profile
      • Android
        • Get Started
        • Advanced configurations
        • Trips widgets
        • My Synthesis
        • My Driver Profile
  • Driver Data Timeline UI
    • Introduction
    • iOS
      • Get started
    • Android
      • Get started
  • Vehicle
    • Introduction
    • iOS
      • Get started
      • Vehicle management
      • Beacon management
      • Bluetooth device management
      • Odometer
      • References (iOS)
    • Android
      • Get started
      • Vehicle management
      • Beacon management
      • Bluetooth device management
      • Odometer
      • References (Android)
    • User interface
      • iOS
        • Get started
        • Main configurations
        • Advanced configurations
      • Android
        • Get started
        • Main configurations
        • Advanced configurations
  • DRIVER ACHIEVEMENT
    • Introduction
    • iOS
      • Get started
    • Android
      • Get Started
    • User interface
      • iOS
      • Android
  • CHALLENGE
    • Introduction
    • Important challenge rules
    • iOS
      • Get started
      • References (iOS)
    • Android
      • Get started
      • References (Android)
    • User interface
      • iOS
        • Get started
      • Android
        • Get started
  • GROUP
    • Introduction
    • iOS
      • Get started
    • Android
      • Get started
  • React Native
    • Get started
    • Integration
  • Flutter
    • Get started
    • Integration
  • Push services
    • Introduction
    • Push Trip Data
    • Push Deleted trip
    • Push Crash Data
    • Push Diagnosis Data
  • ADMIN SERVICES
    • Beacon
      • Add
      • Replace
      • Delete
      • Configuration
    • Challenges
      • List of challenges
      • Challenge details
      • Registered users
      • Challenge ranking
      • Users' progress
      • Definitions
    • Customer
      • Activity timeline
    • Driver
      • Timeline
      • Synthesis
      • Identity
      • Status
      • Add or update a metadata
      • Vehicles
      • Profile
      • Application diagnoses
    • Drivers
      • Account
      • Statistics
      • Ranking
      • Expired accounts
    • Group
      • Timeline
      • Synthesis
    • Trips
      • Add or update a metadata
      • Delete a metadata
    • Vehicle
      • Create
      • Characteristics
      • Configuration
      • Statistics
      • Update mileage
      • Tire and brake wear update
      • References
  • Crashes
    • Annotate a crash
    • Revoke crash location URL
  • ENTERPRISE SERVICES
    • Introduction
    • Teams
      • Create a team
      • List of teams
      • Enable or disable a team
    • Hyper-admins
      • Create a hyper-admin
      • List of hyper-admins
      • Delete a hyper-admin
    • Monitoring
      • Get a push trip data report
      • Get a push crash data report
      • Request to retry failed trips
      • Request to retry failed crashes
      • Get the status of a task
  • Release notes
    • Changelog
      • iOS
      • Android
      • UI iOS
      • UI Android
Powered by GitBook
On this page
  • DriveKitListener
  • UpdateUserIdStatus
  • RequestError
  • DeleteAccountStatus
  • DKWeather

Was this helpful?

Export as PDF
  1. Get started with drivekit
  2. Android

References

PreviousAdvanced configurationsNextAndroid 15 Migration guide

Last updated 1 year ago

Was this helpful?

DriveKitListener

DriveKitListener is an interface that can be passed as a parameter during the DriveKit Core module . It gives useful events about the user lifecycle.

interface DriveKitListener {
    fun onConnected()
    fun onDisconnected()
    fun onAuthenticationError(errorType: RequestError)
    fun userIdUpdateStatus(status: UpdateUserIdStatus, userId:String?)
    fun onAccountDeleted(status: DeleteAccountStatus)
}
Method
Description

onConnected()

The user has been successfully logged

onDisconnected()

The user has been disconnected (manual logout or the account is disabled/deleted)

onAuthenticationError(errorType: RequestError)

userIdUpdateStatus(status: UpdateUserIdStatus, userId:String?)

onAccountDeleted(status: DeleteAccountStatus)

The delete account request has been processed with a DeleteAccountStatus state value

UpdateUserIdStatus

UpdateUserIdStatus is an enum that explains the request status after a userId has asked to be changed.

enum class UpdateUserIdStatus {
    UPDATED, FAILED_TO_UPDATE, INVALID_USER_ID, ALREADY_USED, SAVED_FOR_REPOST
}
Value
Description

UPDATED

The userId has been successfully updated

FAILED_TO_UPDATE

Occurs when DriveKit is not configured yet or if the new userId is the same as the old one

INVALID_USER_ID

Error returned when the new userId is blank

ALREADY_USED

The new userId is already taken by another user

SAVED_FOR_REPOST

The request failed but a retry will be done

RequestError

RequestError is an enum that describes the error type of a DriveKit request.

enum class RequestError {
    NO_NETWORK, UNAUTHENTICATED, FORBIDDEN, SERVER_ERROR, CLIENT_ERROR, UNKNOWN_ERROR, LIMIT_REACHED
}
Value
Description

NO_NETWORK

The user has no or a bad connection during the request.

UNAUTHENTICATED

A request has been launched but the user is not logged (401 error).

FORBIDDEN

A 403 error occurred. You might don't have access to call that service. Please contact the DriveQuant to learn more.

SERVER_ERROR

Drivequant's backend responds with a 500 server error.

CLIENT_ERROR

Drivequant's backend responds with a 400 error different than UNAUTHENTICATED, FORBIDDEN and LIMIT_REACHED

UNKNOWN_ERROR

An unknown error occurred, please contact the Drivequant team to investigate the issue.

LIMIT_REACHED

The DriveKit API key has reached the accounts number limit. Please contact the Drivequant team.

DeleteAccountStatus

DeleteAccountStatus is an enum that describes the deletion status. It can have 3 values:

  • SUCCESS: Account deleted successfully

  • FAILED_TO_DELETE: Account not deleted, an error has occurred

  • FORBIDDEN: Account deletion not activated for this team

DKWeather

DKWeather is an enum that describe each category of weather during a trip. It can have these values:

  • UNKNOWN

  • SUN

  • CLOUD

  • FOG

  • RAIN

  • SNOW

  • ICE

The login has failed due to a

The update userId request has been processed with a state value

initialization
RequestError
UpdateUserIdStatus