![](https://developers.google.com/static/maps/documentation/mobility/driver-sdk/scheduled/images/driver-sdk-app-scheduled.png "Driver SDK scheduled tasks overview")

The Driver SDK is a mobile app toolkit and a fundamental component of Fleet
Engine. With this SDK, your driver app can both manage work assignments and
enable driver navigation and routing capabilities.

## Before you begin

This guide assumes you have read the following:

- [Fleet Engine essentials](https://developers.google.com/maps/documentation/mobility/fleet-engine/essentials.md.txt).
- [The data model for vehicles](https://developers.google.com/maps/documentation/mobility/fleet-engine/essentials/vehicles-intro.md.txt#scheduled-tasks).
- [The data model for scheduled tasks](https://developers.google.com/maps/documentation/mobility/fleet-engine/essentials/tasks-intro.md.txt#data-model).
- [How to set up Fleet Engine](https://developers.google.com/maps/documentation/mobility/fleet-engine/essentials/set-up-fleet.md.txt).
- [How to create and use vehicles in Fleet Engine](https://developers.google.com/maps/documentation/mobility/fleet-engine/essentials/vehicles.md.txt).

## What is the Driver SDK for scheduled tasks?

The Driver SDK communicates vehicle location and task updates to Fleet Engine so
that Fleet Engine can manage the delivery vehicles and their assigned delivery
stops and tasks. At its core, the SDK uses an event listener to send location
updates and latitude/longitude coordinates, along with the current route segment
and destination from the Navigation SDK to Fleet Engine when your driver begins
driving.

## Why use the Driver SDK for scheduled tasks?

The Driver SDK enables easier integration with Fleet Engine for updates to the
driver's routes. With this SDK, your driver can use a single app to manage
assignments and navigate as they would using their consumer version of Google
Maps but without having to switch to another app.

## What you can do with the Driver SDK for scheduled tasks

Use the Driver SDK for scheduled tasks to communicate the following with Fleet
Engine:

- Delivery vehicle's real-time position on a map.
- Latitude/longitude coordinates for the stop.
- Remaining distance to the stop.
- Estimated time of arrival to the stop.
- Route the vehicle needs to take as provided by the Navigation SDK.

## How the Driver SDK for scheduled tasks works

The Driver SDK depends on the Navigation SDK for the routing information and
destination. Together with the information from the Navigation SDK, the Driver
SDK integrates with your driver app and provides Fleet Engine with a stream of
location updates, latitude/longitude coordinates, remaining distance, and ETAs.
All other vehicle data updates must be sent to the customer backend, which
relays the data to Fleet Engine.

![System diagram which shows how the Driver SDK communicates from the clients to the customer infrastructure and then to the Google infrastructure through Fleet Engine and the Customer Backend](https://developers.google.com/static/maps/documentation/mobility/driver-sdk/scheduled/images/driver-sdk-scheduled-system-diagram.png)

## How to use the Driver SDK for scheduled tasks

Select your platform to see how to start using the Driver SDK.

### Android

|---|---|---|
| 1 | **Get the Driver SDK for Android** | For more information, see [Get the Driver SDK](https://developers.google.com/maps/documentation/mobility/driver-sdk/android/minimum-requirements). |
| 2 | **Configure a Google Cloud console project** | For more information, see [Configure a Google Cloud console project](https://developers.google.com/maps/documentation/mobility/driver-sdk/android/configure-project). |
| 3 | **Declare dependencies** | For more information, see [Declare dependencies](https://developers.google.com/maps/documentation/mobility/driver-sdk/android/dependencies). |
| 4 | **Create authentication tokens** | For more information, see [Create authentication tokens](https://developers.google.com/maps/documentation/mobility/driver-sdk/android/authenticate). |
| 5 | **Initialize the Driver SDK** | For more information, see [Initialize the Driver SDK](https://developers.google.com/maps/documentation/mobility/driver-sdk/android/initialize-sdk). |
| 6 | **Get the vehicle ready** | For more information, see [Get the vehicle ready](https://developers.google.com/maps/documentation/mobility/driver-sdk/android/vehicle-ready). |

### iOS

|---|---|---|
| 1 | **Get the Driver SDK for iOS** | For more information, see [Get the Driver SDK](https://developers.google.com/maps/documentation/mobility/driver-sdk/ios/minimum-requirements). |
| 2 | **Configure a Google Cloud console project** | For more information, see [Configure a Google Cloud console project](https://developers.google.com/maps/documentation/mobility/driver-sdk/ios/configure-project). |
| 3 | **Create authentication tokens** | For more information, see [Create authentication tokens](https://developers.google.com/maps/documentation/mobility/driver-sdk/ios/authenticate). |
| 4 | **Initialize the Driver SDK** | For more information, see [Initialize the Driver SDK](https://developers.google.com/maps/documentation/mobility/driver-sdk/ios/initialize-sdk). |
| 5 | **Get the vehicle ready** | For more information, see [Get the vehicle ready](https://developers.google.com/maps/documentation/mobility/driver-sdk/ios/vehicle-ready). |

## What's next

See the documentation for the platform on which you want to set up the Driver
SDK:

- [Android](https://developers.google.com/maps/documentation/mobility/driver-sdk/android/)
- [iOS](https://developers.google.com/maps/documentation/mobility/driver-sdk/ios/)