Skip to main content

Android Auto and Android Automotive OS

Android Auto projects a driver-optimized experience powered by the connected phone. Android Automotive OS (AAOS) runs in the vehicle and installs the app on the car. A vehicle may support both.

ConcernAndroid AutoAAOS
Runtime/dataPhone app/servicesVehicle Android device
ConnectivityPhone and projection linkVehicle-assigned networks, possibly no phone
IdentityCommonly phone accountMultiple vehicle users/guest/valet require explicit design
HardwarePhone plus car hostOEM vehicle hardware and displays

Use supported app categories and Car App Library/media templates rather than recreating a phone UI. Templates constrain interaction to reduce driver distraction and give OEM-consistent behavior.

Restrictions are context, not gear inference​

UX restrictions can vary by manufacturer, country, and display: a driver-facing screen may be restricted while a passenger display is not. Query platform restrictions. Do not infer them from “gear != PARK” or try to bypass them.

Design glanceable hierarchy, short flows, large targets, voice/audio continuity, safe errors, and parked-only setup. Preserve playback/navigation intent across phone disconnect, vehicle shutdown, network switching, account change, and process death.

Architecture boundary​

interface DrivingContext {
val interactionMode: StateFlow<InteractionMode>
}

enum class InteractionMode { PARKED, RESTRICTED, PASSENGER_ALLOWED }

Domain/media state should not depend on Activity or car templates. Platform adapters translate supported actions. Backend authorization remains independent of vehicle UI.

Practical mistakes​

  • ❌ Mark ordinary AAOS activities distraction-optimized.
  • ✅ Use only supported declarations/APIs and current car-quality rules.
  • ❌ Assume a persistent personal driver account.
  • ✅ handle guest, logout, shared vehicle, and privacy-safe cache clearing.
  • ❌ Test only the desktop-sized emulator window.
  • ✅ test applicable templates, rotary/touch, audio focus, restriction changes, reconnect, and OEM dimensions.

Sources​