[avd] Run AVD Emulator without Android Studio

is there a way to run the emulator without starting the Android Studio first. Perhaps from the command line. I know that this feature was available in older versions and has vanished since then. But perhaps someone found out how to do it anyways?

This question is related to avd

The answer is


Got it working for Windows 10:

C:\Users\UserName\AppData\Local\Android\Sdk\tools>emulator -list-avds
Nexus_5X_API_28
C:\Users\UserName\AppData\Local\Android\Sdk\emulator>emulator -avd Nexus_5X_API_28

  1. Just create a .bat file. Call it smth like "run pixel 2.bat"
  2. Open it with editor like Notepad++
  3. Write 2 lines of code
cd C:\Users\mxsof\AppData\Local\Android\Sdk\emulator 
emulator -avd pixel_2_api_29
  1. Launch it.

That's all. Happy coding!


(Only for Windows) Why to torture yourself? Make a Simple BAT file ! :

  1. Open Notepad
  2. Create the command as shown below
  3. Save as *.bat
  4. (Optional) Create a shortcut to that *.bat, rename shortcut and change icon

Here is the command:

cd /d yourSdkPath\emulator && emulator -avd yourAVDName

Example:

cd /d D:\Android_SDK\emulator && emulator -avd Nexus_5_API_28


Assuming you have installed Android studio properly,Open a command prompt and type emulator -list-avds which will display all the devices and then type emulator @avd_name where avd_name is the the name of your emulator installed.


If you are on windows then create a .bat file and just double click that .bat file which will save you some time every day. Here is my code to launch android Emulator with use of batch file:

@echo off
title Android Emulator
color 1b
echo #################################

echo Please make sure that your android path is correct for the script
echo Change this path "C:\Users\YOUR_USER_NAME\AppData\Local\Android\Sdk\emulator" to use your curret path and save it as a .bat file on your system to launch android emulator
echo #################################
c:
cd C:\Users\YOUR_USER_NAME\AppData\Local\Android\Sdk\emulator
emulator -avd Nexus_5X_API_28

pause

The path for emulator is

/Users/<Username>/AppData/Local/Android/sdk/tools

Firstly change the directory where your avd devices are listed; for me it is here:

cd ~/Android/Sdk/tools

Then run the emulator by following command:

./emulator -avd Your_avd_device_name

For me it is:

./emulator -avd Nexus_5X_API_27

That's all.


A Picture worth thousand words :)

How to Start AVD from MAC terminal

AVD from MAC Terminal


On MacOS

First list down the installed emulators

~/Library/Android/sdk/tools/emulator -list-avds

then run an emulator

~/Library/Android/sdk/tools/emulator -avd Nexus_5X_API_27

For Windows users:

  • Copy your Emulator name.
  • Go to this directory: C:\Users\[yourusername]\AppData\Local\Android\Sdk\emulator
  • Right click on emulator.exe and send as a shortcut to where you want.
  • Right click on shortcut .exe file and add your Emulator name just copied to end of target textbox with @ symbol.
  • Double click your shortcut and done!

C:\Users\[yourusername]\AppData\Local\Android\Sdk\emulator\emulator.exe @EmulatorName


In Ubuntu 20.04, I found following solution

First You need to export Android path variables. For that :

export ANDROID_SDK=~/Android/Sdk
export PATH=$ANDROID_SDK/emulator:$ANDROID_SDK/tools:$PATH

The paths may change according to your installation path. If Android Studio is installed using Ubuntu Software then path will be same as stated above.

If the export worked correctly, then following command should list your AVD names.

emulator -list-avds

In my case, I got the result

Nexus_5_API_30

Which is the name of my AVD.

If the above command have listed your AVD name, then you could run your AVD by :

emulator @YOUR_AVD_NAME

In my case

emulator @Nexus_5_API_30

You could add the export commands to .bashrc file to avoid typing export command every time you needed to run your AVD .


You can make a batch file, that will open your emulator directly without opening Android Studio. If you are using Windows:

  • Open Notepad

  • New file

  • Copy the next lines into your file:

     cd /d C:\Users\%username%\AppData\Local\Android\sdk\tools
     emulator @[YOUR_EMULATOR_DEVICE_NAME]
    

    Notes:

  • Replace [YOUR_EMULATOR_DEVICE_NAME] with the device name you created in emulator

  • To get the device name go to: C:\Users\%username%\AppData\Local\Android\sdk\tools

  • Run cmd and type: emulator -list-avds

  • Copy the device name and paste it in the batch file

  • Save the file as emulator.bat and close

  • Now double click on emulator.bat and you got the emulator running!


Assuming you've got Android Studio installed, and SDK in your PATH, it's:

emulator -avd avd_name

To get a list of AVD names, run:

emulator -list-avds

Source: https://developer.android.com/studio/run/emulator-commandline.html


The way to run the emulator from the console (I assume that you installed it before, using Android Studio) is:

run

cd ~/Android/Sdk/tools/bin && ./avdmanager list avd

OR

cd ~/Android/Sdk/tools && ./emulator -list-avds

You will get the list od your virtual installed devices. In my case it was:

Available Android Virtual Devices:
  Name: Galaxy_Nexus_API_17
  Device: Galaxy Nexus (Google)
  Path: /home/piotr/.android/avd/Galaxy_Nexus_API_17.avd
  Target: Google APIs (Google Inc.)
  Based on: Android 4.2 (Jelly Bean) Tag/ABI: google_apis/x86
  Skin: galaxy_nexus
  Sdcard: /home/piotr/.android/avd/Galaxy_Nexus_API_17.avd/sdcard.img

Copy name of the device you want to run and then

cd ~/Android/Sdk/tools && ./emulator -avd NAME_OF_YOUR_DEVICE

in my case:

cd ~/Android/Sdk/tools && ./emulator -avd Nexus_5X_API_23


Open your terminal and

cd path_to/Android/Sdk/emulator

And run the following to get the emulator name that you created before using android studio

./emulator -list-avds

Replace $emulator_name with the one you want to launch and run

./emulator -avd $emulator_name

 Update 2020/05:
 Windows 10

first get a list of emulators, open cmd and run :

cd %homepath%\AppData\Local\Android\Sdk\emulator

then

emulator -list-avds

next create a shortcut of emulator.exe found in the directory above, then change the properties in it by editing the Target: text box like this

emulator.exe @YourDevice

enter image description here


cd C:\Users\{computer_user_name}\AppData\Local\Android\Sdk\emulator

then run:

./emulator -list-avds
or
emulator -list-avds

output:

PIXEL_2_API_29
PIXEL_2_XL_API_29

then run:

./emulator -avd PIXEL_2_XL_API_29
or
emulator -avd PIXEL_2_XL_API_29

That's it


in 2019 , there might have some changes due to android studio update.

  1. open command prompt [ cmd ]
  2. change directory to sdk > tools

    cd C:\Users\Intel\AppData\Local\Android\sdk\tools

if that address is not working 2.a open android studio 2.b open Gradle Scripts directory ( if you have a open project inside android studio, you can easily find in left side of the screen. ) 2.c double click on local properties ( at the very bottom ) 2.d you should see the address right away, ( sdk dir ) 2.e change your directory to that address in command prompt ( like cd AppData ) 2.f change directory again to tools ( cd tools )

  1. check the list of emulators that you all ready created by

    emulator -list-avds

  2. copy your preferred emulator name.

  3. choose and run your emulator by

    emulator -avd < your preferred emulator name >

  4. done.


For Windows Users

  1. create and open a bat file(.bat is the extension of file)
  2. Put the following code inside the file

    cd /d Path of SDK folder \emulator && emulator -avd Name of Emulator

Here is the example

cd /d E:\Run\Android_Installation_Final\Sdk\emulator && emulator -avd Pixel_API_28
  1. Save it.
  2. Run it from any cmd(command prompt shell)

you can see my post to auto start emulator when windows start


to list the emulators you have

~/Library/Android/sdk/tools/emulator -list-avds

for example, I have this Nexus_5X_API_24

so the command to run that emulator is

cd ~/Library/Android/Sdk/tools && ./emulator -avd Nexus_5X_API_24

I am working with a React Native project and I also faced this problem

I solved it by making a .bat file in my desktop that I can open fast

The content of the .bat is

C:\Users\haria\AppData\Local\Android\sdk\emulator\emulator -avd Pixel_2_XL_API_27

Where haria is my Windows username and Pixel_2_XL_API_27 is my emulator name


If you want to see your emulator name, open CMD (or PowerShell) and type (In Windows)

cd C:\Users\haria\AppData\Local\Android\sdk\emulator

Then to see the emulator(s) name

./emulator -list-avds


Try this

1. Complete Video tutorials (For all windows versions)

OR

2. Text tutorials

  • Open the command prompt and change the directory where your sdk is placed D:\Softwares\Android\sdk\tools\bin>

  • now add your avdmanager in this,now your full code is D:\Softwares\Android\sdk\tools\bin>avdmanager list avd

  • it will show you a list of emulator device that you have already created after few seconds

  • now typecd..

  • and run your emulator with this cmd, Here my emulator name is Tablet_API_25 so I have typed this name after the -avd.

    D:\Softwares\Android\sdk\tools>emulator -avd Tablet_API_25

EDIT : For Android Studio 3.2 or later, the path changes to D:\Softwares\Android\sdk\emulator\emulator -avd Tablet_API_25

i.e. %ANDROID_HOME%\tools\emulator -avd [AVD NAME]

enter image description here


This is the commands on Mac

cd ~/Library/Android/Sdk/tools/bin && ./avdmanager list avd

then

cd ~/Library/Android/Sdk/tools && ./emulator -avd NAME_OF_YOUR_DEVICE

Here is what I've done to run the emulator quickly in windows : I've created a windows batch file like this :

start C:\Users\{Username}\AppData\Local\Android\Sdk\tools\emulator.exe -avd {Emulator_Name}

and just run the batch file every time I need the emulator.


In the ANDROID_HOME folder you will have tools folder

In Mac/Linux emulator -avd <avdName> In Windows emulator.exe -avd <avdName>

If you are using API 24 You can get the names of the emulator from the list android list avds If you are using API 25 then you will get it with avdmanager in tools\bin avdmanager list avds


Here’s what you need to do:

1.Download and extract the SDK.
2.Open a terminal and navigate to the “tools” directory.
3.Launch the “android” tool (./android if you are currently in the tools directory).
4.Tick off the “SDK Platform” for each version of Android that you’d like to use in your emulator.
5.Click the “Install N Packages” button.
6.Click each package and tick off “Accept License” (legally, I’m probably required to tell you that this step may take several hours as you read each license ;).
7.Done with those licenses? Great. Click “Install”. Wait for the SDK manager to finish installing your packages, then you can close it.
8.Back in your terminal, still in the tools directory, enter ./android avd which will launch the Android Virtual Device Manager.
9.Click “New” and fill out the form to build the device you’d like to emulate. In the “Target” dropdown, you’ll see the SDK Platforms that you installed earlier. If the version you need is missing, you need to go back and install it. Click OK when you’re done.
10.Click on the device that you just created and click the “Start” button, tweak any options that you need on the Launch Options window, and click “Launch”.

Check this question's answer also.


You may create a shell script and put it in your desktop:

Dim WinScriptHost
Set WinScriptHost = CreateObject("WScript.Shell")
WinScriptHost.Run "C:\Users\<user>\AppData\Local\Android\Sdk\emulator\emulator -avd <AVD_NAME>", 0
Set WinScriptHost = Nothing

Replace <user> with your user id, and <AVD_NAME> with the name of your avd file, e.g. pixel_2_api_28.


For Linux/Ubuntu

Create a new File from Terminal as

gedit emulator.sh (Use any Name for file here i have used "emulator")

now write following lines in this file

cd /home/userName/Android/Sdk/tools/

./emulator @your created Android device Name

(here after @ write the name of your AVD e.g

./emulator @Nexus_5X_API_27 )

Now save the file and run your emulator using following commands

./emulator.sh

In case of Permission denied use following command before above command

chmod +x emulator.sh

All set Go..


If you are starting emulator for Flutter applications, then you can run below command -

> flutter emulators --launch [Emulator ID]

In my case, emulator id is Pixel_2_API_29 as i created it with AVD manager in Android studio. so the command in my case is below -

> flutter emulators --launch Pixel_2_API_29

Thanks


For Windows

In case anyone looking for shortcut / batch script - Gist - Download batch file.

@echo off
IF [%1]==[] (GOTO ExitWithPrompt)
set i=1
FOR /F "delims=" %%i IN ('emulator -list-avds') DO (
    set /A i=i+1
    set em=%%i
    if %i% == %1 (
        echo Starting %em%
        emulator -avd %em%
        EXIT /B 0
    )
)
GOTO :Exit
:ExitWithPrompt
emulator -list-avds
echo Please enter the emulator number to start

:Exit
EXIT /B 0

Usage

D:\>start-emulator
Nexus_5_API_26
Please enter the emulator number to start

D:\>start-emulator 1
Starting Nexus_5_API_26
HAX is working and emulator runs in fast virt mode.

On windows

......\Android\sdk\tools\bin\avdmanager list avds

......\Android\sdk\tools\emulator.exe -avd Nexus_5X_API_27

if you installed Git on your system. then you can run .sh bash code. I create the bash code for search from your created ADV Devices and list them. then you can select the number of adv device for run emulator without running Android studio.

link: adv-emulator.sh

note [windows os]: please first add %appdata%\..\Local\Android\Sdk\emulator to your system Environment path, otherwise the bash-code not work.


If you are on windows, what about a shortcut ? It is very easy to place whatever you want ant the icon is descriptive and nice.

  • First, navigate to your android sdk, probably at C:\Users\YOURUSERNAME\AppData\Local\Android\Sdk\tools\
  • Then right click on emulator.exe and then click create shortcut.
  • Your new and shiny shortcut gets created, probably with a predefined name.
  • Right click on the shortcut, and on the target field (my computer is on spanish) add an extra parameter with the name of your device with an @ in front (take a look at the picture below )

shortcut params

now you can do whatever yhou want with that shortcut, put on the desktop, bind it to the start-menu or whatever


I already have the Studio installed. But without starting (not installing) the Android Studio you can directly start the emulator with

C:\Users\YOURUSERNAME\AppData\Local\Android\Sdk\tools\emulator.exe -netdelay none -netspeed full -avd YOUR_AVD_NAME