TripBuilder
Builder utility for creating Trip objects from AAGuidanceState for NavigationManager updates.
This class constructs properly formatted Trip objects that can be sent to the Android Auto host via androidx.car.app.navigation.NavigationManager.updateTrip. The Trip data is displayed on:
The instrument cluster display (if vehicle supports it)
Notification summaries
Other system navigation UI elements
Purpose
While the navigation screen handles the main head unit display using NavigationTemplate, the Trip object sent via updateTrip serves a different purpose:
NavigationTemplate: Full-featured navigation UI on the main screen
Trip: Lightweight data for instrument cluster and system notifications
Usage
// In your NavigationScreen
val tripBuilder = TripBuilder()
guidanceProvider.guidanceState.collect { state ->
val trip = tripBuilder.buildTrip(state, destinationTitle)
if (trip != null) {
navigationManager.updateTrip(trip)
}
}Data Mapping
| AAGuidanceState Field | Trip Field |
|---|---|
| instruction | Step.cue, Step.road |
| distanceToNextInstruction | Step distance |
| distanceToDestination | Destination.TravelEstimate distance |
| durationToDestination | TravelEstimate remaining time |
| eta | TravelEstimate arrival time |
| maneuverIcon | Step.Maneuver icon |
| isRerouting | Trip.loading |
See also
Functions
Builds a DateTimeWithZone from an ETA string.
Builds a TravelEstimate with remaining distance, time, and ETA.
Parses a formatted distance string into a Distance object.
Parses a duration string into a Duration object.