AVD Manager v2.1.0

What’s Changed

Automatic failure diagnostics

On any boot failure (timeout, crash, kernel fault), both the host log and device logcat (*:w) are automatically saved to $BITRISE_DEPLOY_DIR and their paths exported — no configuration needed. Log filenames include a timestamp to distinguish retries:

emulator_20260529_141500_host.log
emulator_20260529_141500_device_logcat.log

New inputs

host_debug_tags
Controls which emulator debug subsystems to log. Pass a comma-separated list of tags, e.g.:

  • init,avd,kernel,snapshot — logs initialization, AVD, kernel, and snapshot events (default quiet mode)
  • all — full verbose output

When set, the host log is exported as $BITRISE_EMULATOR_HOST_LOG and deployed as a build artifact.

device_logcat_tags
Captures device-side logcat during the emulator run using Android’s componentName:logLevel filter format, e.g. *:w (all warnings), *:s ActivityManager:d (silent except ActivityManager at debug). The output is exported as $BITRISE_EMULATOR_DEVICE_LOGCAT_LOG.

New outputs

BITRISE_EMULATOR_HOST_LOG
Path to the emulator host process log file (stdout/stderr). Set automatically on any boot failure — even if you haven’t enabled debug mode — so you always have logs to investigate when a build fails. When host_debug_tags is set, this file is also available on successful runs.

BITRISE_EMULATOR_DEVICE_LOGCAT_LOG
Path to the device-side logcat output file. Captured automatically at warning level on boot failure. When device_logcat_tags is set, uses your specified filter on all runs.


Bug fixes

16KB page size images (API 37+)

Creating an AVD with tag: google_apis_ps16k and api_level: 37 previously failed with:

Error: Invalid --tag page_size_16kb for the selected package. Valid tags are:
google_apis
null

Google changed the valid avdmanager tag for ps16k images between API 36 and API 37. The step now lets avdmanager auto-select the tag, so this works correctly across all API levels.

API 37 package not found

Installing the API 37 system image previously failed with:

Warning: Failed to find package 'system-images;android-37;google_apis_ps16k;arm64-v8a'

Google uses android-37.0 (with a minor version) as the sdkmanager package identifier for API 37, not android-37. The api_level input now accepts string values, so api_level: "37.0" correctly installs the image.

New Contributors

Full Changelog: Comparing 2.0.2...2.1.0 · bitrise-steplib/steps-avd-manager · GitHub