You can set environment variables for Android Studio and the command-line tools thatspecify things like where the SDK is installed and where user-specific data is stored.This page describes the most commonly used environment variables.
The following example shows how to use an environment variable to launch an emulator when the SDK installation has been put in E:Androidsdk
instead of in its default location of $USER_HOME
or $HOME
.
Variables reference
After you installed android studio, you still need to configure some android SDK environment variables then you can use it easily. This article will tell you how to correctly configure SDK environment variable such as ANDROIDHOME, PATH etc. Configure Android SDK Variable In Windows. 1.1 Get Android SDK Install Directory Path. Before you can How To Set Android SDK Path In Windows And. That means android is configured properly in your system. Now ANDROIDHOME and Path Environment Variables are set for android SDK in windows environment. So android environment is configured and ready to use with appium to execute software automation tests.
The following table describes commonly used environment variables for the Android SDK tools.
Mac Android_home
Mac Android Studio Java_home
Table 1. Environment variables
Mac Homebrew Android Sdk
Android SDK environment variables | |
---|---|
ANDROID_SDK_ROOT | Sets the path to the SDK installation directory. Once set, the value does not typically change, and can be shared by multiple users on the same machine. ANDROID_HOME , which also points to the SDK installation directory, is deprecated. If you continue to use it, the following rules apply:
|
REPO_OS_OVERRIDE | Set this variable to windows , macosx , or linux when you use sdkmanager to download packages for an operating system different from the current machine. Note: You can use Android Studio instead of sdkmanager to manage your SDK packages. See Update Your Tools with the SDK Manager. |
Android Studio configuration environment variables | |
The Android Studio configuration variables contain settings that customize the location of configuration files and the JDK. On start-up, Android Studio checks these variables for settings. For more information, see Configure Android Studio. | |
STUDIO_VM_OPTIONS | Sets the location of the studio.vmoptions file. This file contains settings that affect the performance characteristics of the Java HotSpot Virtual Machine. This file can also be accessed from within Android Studio. See Customize your VM options. |
STUDIO_PROPERTIES | Sets the location of the idea.properties file. This file allows you to customize Android Studio IDE properties, such as the path to user installed plugins, and the maximum file size supported by the IDE. See Customize your IDE properties. |
STUDIO_JDK | Sets the location of the JDK with which to run Android Studio. When you launch the IDE, it checks the STUDIO_JDK , JDK_HOME , and JAVA_HOME environment variables in that order. |
STUDIO_GRADLE_JDK | Sets the location of the JDK that Android Studio uses to start the Gradle daemon. When you launch the IDE, it first checks STUDIO_GRADLE_JDK . If STUDIO_GRADLE_JDK is not defined, the IDE uses the value set in the Project Structure dialog. |
Emulator Environment Variables | |
By default, the emulator stores configuration files under $HOME/.android/ and AVD data under $HOME/.android/avd/ . You can override the defaults by setting the following environment variables. The emulator -avd <avd_name> command searches the avd directory in the order of the values in $ANDROID_AVD_HOME , $ANDROID_SDK_HOME/.android/avd/ , and $HOME/.android/avd/ . Note: Starting with Android Studio 4.2, the ANDROID_SDK_HOME environment variable is deprecated and has been replaced with ANDROID_PREFS_ROOT . For emulator environment variable help, type | |
ANDROID_EMULATOR_HOME | Sets the path to the user-specific emulator configuration directory. In Android Studio 4.1 and lower, the default location is $ANDROID_SDK_HOME/.android/ . Starting with Android Studio 4.2, the |
ANDROID_AVD_HOME | Sets the path to the directory that contains all AVD-specific files, which mostly consist of very large disk images. The default location is $ANDROID_EMULATOR_HOME/avd/ . You might want to specify a new location if the default location is low on disk space. |
The Android emulator queries the following environment variables when it starts. | |
ANDROID_LOG_TAGS | See ANDROID_LOG_TAGS . |
HTTP_PROXY | Contains the HTTP/HTTPS proxy (host name and port) setting for a global http proxy. Uses a colon (:) separator between the host and the port. For example, set HTTP_PROXY=myserver:1981 . |
ANDROID_VERBOSE | See ANDROID_VERBOSE . |
ANDROID_SDK_ROOT | See ANDROID_SDK_ROOT . |
ANDROID_EMULATOR_USE_SYSTEM_LIBS | Contains a value of 0 (default) or 1. A value of 1 means to use the system's libstdc++.so file instead of the one that comes bundled with the emulator. Set this enivronment variable only when the emulator does not start on your linux system because of a system library problem. For example, some Linux Radeon GL driver libraries require a more recent libstdc++.so file. Note: There is no guarantee that setting this environment variable to 1 will make the emulator runnable. It is a work-around for system library issues that affect a very small number of Linux users. |
Quick emulator (QEMU) audio | |
QEMU_AUDIO_DRV QEMU_AUDIO_OUT_DRV QEMU_AUDIO_IN_DRV | On Linux, you can change the default audio backend of the emulator by setting the QEMU_AUDIO_DRV environment variable to one of the following values:
You can also use distinct backends for audio input and audio outputs by selecting one of the QEMU values for the If you want to disable the audio support, use the
|
adb environment variables | |
ANDROID_SERIAL | Use this variable to provide an emulator serial number, such as emulator-5555, to an adb command. If you set this variable, but use the -s option to specify a serial number from the command line, the command-line input overrides the value in ANDROID_SERIAL . The following example sets |
adb logcat environment variables | |
ANDROID_LOG_TAGS | Use this environment variable to set a default filter expression when you are running logcat from your development computer. For example:See Filtering Log Output for more information and examples. |
ADB_TRACE | Contains a comma-separated list of the debug information to log. Values can be the following: all , adb , sockets , packets , rwx , usb , sync , sysdeps , transport , and jdwp . To display the adb logs for the adb clients and the adb server, set |
ANDROID_VERBOSE | Contains a comma-separated list of verbose output options (debug tags) used by the emulator. The following example shows ANDROID_VERBOSE defined with the debug-socket and debug-radio debug tags: Unsupported debug tags are ignored. For more information about debug tags, use |
How to set environment variables
The following examples show how to set environment variables in a terminal window and in a shell script for different operating systems. Variable settings in terminal windows last as long as the window is open. Variable settings in shell scripts persist across login sessions.
Mac Android_home Deprecated
Windows: In a terminal window, type the following:
Alternately, add it to a shell script through the Windows UI. Check the documentation for your version of Windows to learn how.
Mac and Linux: In a terminal window, type the following:
Alternately, add it to your ~/.bash_profile
file and source the file as follows: