Test using the configurable emulator

To help emulate some of the configurations seen across OEMs, certain generic system images support runtime configurability.

These configurations are implemented using Runtime Resource Overlays (RROs) and can be managed using the adb shell cmd overlay command.

Use the following commands to enable or disable a RRO:

adb shell cmd overlay enable NAME
adb shell cmd overlay disable NAME

Modify system bar position

By default, the configurable emulator has two system bars – a status bar on the top of the screen and a navigation bar at the bottom of the screen. Though many cars share this layout, some don't. Of particular note is that some cars have their system bar(s) on the horizontal sides of the screen and not the vertical sides, which may break assumptions made when developing apps for mobile form factors. See System bars, immersive mode, and edge-to-edge rendering for more details and technical guidance.

The following RROs can be used to modify the system bars:

  • com.android.systemui.rro.bottom
  • com.android.systemui.rro.bottom.rounded
  • com.android.systemui.rro.left
  • com.android.systemui.rro.right

Emulate display cutouts

Some cars have screens with display cutouts that are very different when compared to those seen on mobile devices. Instead of the notches or pinhole camera cutouts, some Android Automotive OS vehicles have curved screens that make the screen non-rectangular. See Adapt to irregularly shaped displays for more details and technical guidance.

The following RROs can be used to emulate display cutouts:

  • com.android.internal.display.cutout.emulation.top_and_right
  • com.android.internal.display.cutout.emulation.free_form
  • com.android.internal.emulation.automotive_ultrawide_cutout

Since the total number of configurations that can be created by combining these RROs is quite large, we recommend testing your app using the following combinations of hardware profiles and RROs, which are similar to some vehicles on the road today.

  • Automotive (1080p landscape) with com.android.systemui.rro.left or com.android.systemui.rro.right
  • Automotive Ultrawide with com.android.systemui.rro.left and com.android.internal.emulation.automotive_ultrawide_cutout