1// Copyright 2019 The Chromium Authors 2// Use of this source code is governed by a BSD-style license that can be 3// found in the LICENSE file. 4 5syntax = "proto3"; 6 7package tools.android.avd.proto; 8 9message CIPDPackage { 10 // CIPD package name. 11 string package_name = 1; 12 // CIPD package version to use. 13 // Ignored when creating AVD packages. 14 string version = 2; 15 // Path into which the package should be installed. 16 // relative to pylib.local.emulator.avd.COMMON_CIPD_ROOT. 17 string dest_path = 3; 18} 19 20message ScreenSettings { 21 // Screen height in pixels. 22 uint32 height = 1; 23 24 // Screen width in pixels. 25 uint32 width = 2; 26 27 // Scren density in dpi. 28 uint32 density = 3; 29} 30 31message SdcardSettings { 32 // Size of the sdcard that should be created for this AVD. 33 // Can be anything that `mksdcard` or `avdmanager -c` would accept: 34 // - a number of bytes 35 // - a number followed by K, M, or G, indicating that many 36 // KiB, MiB, or GiB, respectively. 37 string size = 1; 38} 39 40// settings only used during AVD creation. 41message AvdSettings { 42 // Settings pertaining to the AVD's screen. 43 ScreenSettings screen = 1; 44 45 // Settings pertaining to the AVD's sdcard. 46 SdcardSettings sdcard = 2; 47 48 // Advanced Features for AVD. The <key,value> pairs here will override the 49 // default ones in the given system image. 50 // See https://bit.ly/2P1qK2X for all the available keys. 51 // The values should be on, off, default, or null 52 map<string, string> advanced_features = 3; 53 54 // The physical RAM size on the device, in megabytes. 55 uint32 ram_size = 4; 56 57 // The properties for AVD. The <key,value> pairs here will override the 58 // default ones in the given system image. 59 // See https://bit.ly/3052c1V for all the available keys and values. 60 // 61 // Note the screen, sdcard, ram_size above are ultimately translated to 62 // AVD properties and they won't be overwritten by values here. 63 map<string, string> avd_properties = 5; 64} 65 66// settings used during AVD launch. Needed in both creation and deploy textpb. 67message AvdLaunchSettings { 68 // The mode of hardware OpenGL ES emulation. 69 // See "emulator -help-gpu" for a full list of modes. 70 string gpu_mode = 1; 71} 72 73message Avd { 74 // Next ID: 13 75 76 // The emulator to use in running the AVD. 77 CIPDPackage emulator_package = 1; 78 79 // The system image to use. 80 CIPDPackage system_image_package = 2; 81 // The name of the system image to use, as reported by sdkmanager. 82 string system_image_name = 3; 83 84 // The AVD to create or use. 85 // (Only the package_name is used during AVD creation.) 86 CIPDPackage avd_package = 4; 87 // The name of the AVD to create or use. 88 string avd_name = 5; 89 90 // How to configure the AVD at creation. 91 AvdSettings avd_settings = 6; 92 93 // This includes additional AvdSettings so that we can create AVDs with 94 // slightly different configs 95 map<string, AvdSettings> avd_variants = 12; 96 97 // min sdk level for emulator. 98 uint32 min_sdk = 7; 99 100 // The partition to install the privileged apk. 101 // version 27 and below is /system. After that it can be 102 // /system, /product, or /vendor 103 string install_privileged_apk_partition = 8; 104 105 // Needed for gmscore/phonesky support. 106 repeated CIPDPackage privileged_apk = 9; 107 repeated CIPDPackage additional_apk = 10; 108 109 // AVD settings used during AVD launch. 110 AvdLaunchSettings avd_launch_settings = 11; 111} 112