IMS SDK Product Document
  • Getting Started
    • iOS
      • Requirements
      • Importing the SDK
      • Permissions
      • Initializing the SDK
      • Using the SDK
        • Using Push Notifications
          • Push notification certificate and profile creation guide
    • Android
      • Requirements
      • Import the SDK
      • Permissions
      • Obfuscation
      • Initialize the SDK
      • Using the SDK
        • Trip Detection and Recording
          • Trip Manager Configuration
            • Using TripDetector.AWARENESS
            • Trip Manager Device Support
          • Trip Manager Control
          • Trip Manager Status
        • Bluetooth and Other Devices
    • React Native
      • Requirements
      • Import the SDK
      • Permissions
      • Initialize the SDK
        • Android
        • iOS
      • Using the SDK
        • Trip Manager
        • Device service
    • Flutter
      • Requirements
      • Import the SDK
      • Permissions
      • Initialize the SDK
      • Using the SDK
  • Security
  • App misuse
  • Time Driven Without Phone
  • DriveSync Portal
    • Requirement
    • User
    • Device
    • Driving Alert
    • Push Notification
    • Invitations
    • Subscription
    • Trip
    • Location
    • Driving Summary
    • Discount
    • Scoring
    • Vehicle
    • Leaderboard
    • Rewards
    • Submit consent to EULA
    • Legal documents and FAQ
    • Named Driver
    • Wedge
  • Known Issues
    • iOS
    • Android
      • 1.17.0
      • 1.18.0
      • 1.22.0
  • Releases
    • 1.13.0
      • iOS
      • Android
    • 1.14.0
      • Android
    • 1.15.0
      • iOS
      • Android
    • 1.15.1
    • 1.16.0
      • iOS
      • Android
    • 1.17.0
      • iOS
      • Android
    • 1.18
      • iOS
      • Android
    • 1.18.1
    • 1.19.0
      • iOS
      • Android
    • 1.20.0
      • Android
      • iOS
    • 1.21.0
      • Android
      • iOS
    • 1.22.0
      • Android
      • iOS
    • 1.23.0
      • Android
      • iOS
    • 1.24.0
      • Android
      • iOS
    • 1.24.1
      • iOS
  • Migration
    • iOS
      • 1.15.x -> 1.16.0
      • 1.16.0 -> 1.17.0
      • 1.17.0 -> 1.18.0
      • 1.18.0 -> 1.19.0
      • 1.19.0 -> 1.20.0
      • 1.20.0 -> 1.21.0
      • 1.21.0 -> 1.22.0
      • 1.22.0 -> 1.23.0
      • 1.23.0 -> 1.24.0
      • 1.24.0 -> 1.24.1
    • Android
      • 1.15.x -> 1.16
      • 1.16 -> 1.17
      • 1.17 -> 1.18
      • 1.18 -> 1.19
      • 1.19 -> 1.20
      • 1.20 -> 1.21
      • 1.21 -> 1.22
      • 1.22 -> 1.23
      • 1.23 -> 1.24
  • Support
Powered by GitBook
On this page
  • Importing repository
  • Using mavenLocal or your own repository
  • Component Libraries
  1. Getting Started
  2. Android

Import the SDK

PreviousRequirementsNextPermissions

Last updated 1 year ago

Importing repository

We recommend specifying the GitHub credentials as environment variables rather than hard-coding the actual username and Personal Access Token (PAT) into the build file.

To create a GitHub Personal Access Token (PAT), follow the instructions here: . You only need the following scope: read:packages

☐ write:packages       Upload packages to GitHub Package Registry
    ☑ read:packages   Download packages from GitHub Package Registry

Using mavenLocal or your own repository

If you prefer not to access the binaries from maven.pkg.github.com you can install the SDK libraries in your own Maven repository, or using mavenLocal on your development machine.

To do so, copy the Maven files from the android-sdk/com/ folder tree.

Component Libraries

The IMS SDK is published as a set of library modules so that you can choose the features you wish to use. Each component has a specific task to perform.

  • tripdetectionumbrella: Trip detection and recording, upload, DriveSync server interaction Most applications use the SDK to detect and record trips. In this case only the tripdetectionumbrella module need be specified; it will automatically link in the required sub-modules.

    • distracteddriving: Add-on for providing distracted driving related events while trip recording. Trip scoring is enhanced by using the distracteddriving module, but this also requires special permissions so it is optional

  • portal: DriveSync server interaction, such as fetching resources and presenting them as native objects If your app displays DriveSync data but does not record trips you can specify the portal module instead of tripdetectionumbrella.

  • Devices: Add-ons for detecting Bluetooth and other devices. (Also see in Obfuscation)

    • devices-wedge: Support for IMS Wedge plus all other BLE and Bluetooth device types

    • devices-ble-nordic: Support for BLE (Bluetooth Low Energy) devices plus other Bluetooth device types

    • devices-bluetooth: Support for Bluetooth audio, headset, and paired data devices

For example, the SDK Sample App uses a full set of SDK features (SDK 1.16):

dependencies {
    ...  
    implementation 'com.intellimec.mobile.android:tripdetectionumbrella:1.18.0'
    implementation 'com.intellimec.mobile.android:distracteddriving:3.13.0'
    implementation 'com.drivesync.android:devices-wedge:1.18.0'
    
    //Additional needed libraries
    implementation 'com.google.android.gms:play-services-maps:18.2.0'
    implementation 'com.google.android.gms:play-services-awareness:19.0.1' //Only needed if using Awareness
    ...
}

The additional library binaries on Github are automatically pulled in as required.

Creating a personal access token
proguard