With each Android release, API and behavior changes impact how apps work on Android Auto and Android Automotive OS. This page details many of these impacts and provides information on how to update your app to support new versions of Android.
Android 15
- Because of the window inset changes for apps targeting Android 15 or higher, you should test apps distributed to Android Automotive OS to verify that activities implemented by your app render as intended. See Work with window insets and display cutouts for more details on the considerations unique to Android Automotive OS.
Android 14
- Because of the requirement for apps targeting Android 14 or higher that foreground service types are required, check that you specify a foreground service type for any foreground services your app has, such as those for navigation and media playback.
- Because ofthe requirement for apps targeting Android 14 or higher that
runtime-registered broadcast receivers must specify export behavior, apps
that use the
CarConnection
API should update toandroidx.car.app:app:1.3.0-beta01
or later. See Connection API. - Because of changes in Android Auto when running on Android 14 and higher
devices, launching activities on the phone screen from the Android Auto app
requires providing an
ActivityOptions
with the display ID set to that of the phone display (DEFAULT_DISPLAY
) when callingstartActivity()
.- Apps that use the
CarContext.requestPermissions()
method should update toandroidx.car.app:app:1.7.0-alpha01
or later, which includes this fix.
- Apps that use the
Android 13
- For apps built using the Android for Cars App Library, the locale of the
Configuration
provided by theCarContext
reflects the Per-application language preferences for the host app, not that of your app.
Android 12
- On devices running Android 12 or higher, Android Auto doesn't change the UI mode of the device when running. See How can I detect if Android Auto is running?.
- Because of the safer component exporting requirements for apps targeting
Android 12 or higher, you must explicitly declare the
android:exported
attribute on the<service>
element forMediaBrowserService
andCarAppService
services. - Because of the pending intents mutability requirements for apps targeting Android 12 or higher, you must explicitly specify the mutability of any pending intent created by your app. For example, this includes the pending intents messaging apps use to handle replying to messages or marking them as read.