This directory contains textpb files used as AVD config files by the script tools/android/avd/avd.py
./creation
are for avd.py create
.avd.py install
and avd.py start
.As more image types (google_apis
, google_atd
, etc.) and cpu architectures (x86
, x86_64
, etc.) are added, the following naming scheme is suggested to use when adding new config files:
android_<API level>_<image type>_<cpu arch>.textpb
For simplicity, we do the following convention for the cpu architectures, from the values in android sdk manager to those in the config file names.
armeabi-v7a
-> arm
arm64-v8a
-> arm64
x86
-> x86
x86_64
-> x64
So for a new config that uses API level 31, image type “google_apis”, cpu arch “x86_64”, the file name would be android_31_google_apis_x64.textpb
avd.py create
These files are normally used only by the builder android-avd-packager. It is not expected for end users to use them.
For developers who try to create new AVD packages through the above packager, instead of triggering one build that re-packages every AVD configs which could takes 3+ hours, the following steps can be used to package only certain configs.
Ensure you have depot_tools
(link) checked out in your local machine.
Create a json file say android-avd.json
and fill in with the “properties” value from the android-avd-packager (example). Then remove the unwanted avd configs from the avd_configs
field.
Here is an example of a json file that packages only two AVD configs:
{ "$build/avd_packager": { "avd_configs": [ "tools/android/avd/proto/creation/android_30_google_atd_x86.textpb", "tools/android/avd/proto/creation/android_30_google_atd_x64.textpb" ], "gclient_config": "chromium", "gclient_apply_config": ["android"] } }
Call bb
command to trigger a new build on android-avd-packager with the property file from the above step.
bb add -p @android-avd.json chromium/ci/android-avd-packager
avd.py install
and avd.py start
When updating these files, please make sure the versions of emulator and system image are the same as the tag values in the to-be-updated AVD CIPD package. Failure to do so will cause the AVD quick boot feature to fail to work properly.