I want to learn Kotlin but I can't. I'm using Kubuntu 20.04 (with NVIDIA GeForce GT 710 graphic card and nvidia-driver-455 driver). I can open virtual device after I create new project. But device is empty and there is not started Android. I see only black page or graphic of other opened window: Screenshot of Virtual device
I see only "Loading devices" in Android studio when I import this project from GitHub: https://gist.github.com/vishnuharidas/33c95afb49ebe9c2dd3c65b5b13d534d
There stays no devices when I create configuration.
And virtual devices are empty when I cloned some another project from GitHub.
I see only "Unable to locate adb" when I open Android Virtual Device Manager.
It writes error "Module not specified" when I created configuration. There is not option File > New > New Module".
I tried reinstall Android studio many times.
Or I can test my apps in real mobile phone but I don't know how.
I finded some similar questions but nothing works for me. Can someone help me?
I tried it in Windows in VirtualBox with same error: Unable to locate adb.
I know the reason, I think. I tried Intellij and there was an error about my CPU: Host CPU is missing the following feature(s) required for x86 emulation: SSSE3. So I tried Intellij and Android studio in my notebook with SSSE3 in CPU. It works! I see the virtual device with Android. There's some warnings/errors too but I'll try to solve these.
Finally solution: check your processor: cat /proc/cpuinfo | grep ssse3
I found another problem 🤪. My USB connector in my PC worked little bad. So check your USB too if you've got a same problem. "real emulator" (my mobile phone) works right now. Procesor without SSSE3 is not a problem in this case.
I have been running Android Studio 1.5.1 doing development on a WMWare copy of Windows 2012 R2 and everything works fine. I've been able to run the device emulator with no problems and start various versions of Android running in AVD.
Android Studio 2.x Change
I recently installed Android Studio 2.0 (see image below for exact version).
Now when I attempt to run the emulator nothing happens.
Well, actually I do see a message in the status bar of Studio when I attempt to start the device, but then that message disappears and nothing happens after that.
There is a warning that I need to turn off Hyper-V (see image below), but I don't believe that is possible since this is a VM.
No Longer Possible?
Is it not possible to run the emulator on the VM any more?
More recent versions of the Android Emulator require hardware virtualization support (Intel HAXM).
Unfortunately, most virtual machines do not provide HAXM instructions to the guest (a VM within a VM), so you will be unable to use the emulator within the virtual machine.
I just installed Android Studio 2.1 on my Windows 2008 R2 VM (running VMWare) and I'm happy to report that it is possible to run ARM based AVD (Android Virtual Devices) on the VM.
Steps To Run Arm-based Virtual Device on VMWare
Go to location where you've installed the Android SDKs (in my case it is at %appdata%\Android2\SDK\
If you are in the right place you should see a directory structure and directories like the ones shown in the first image below.
Start the AVD.exe by double-clicking it.
You will see a window like the one in the image below
Take a close look and notice that this is running an ARM(armeabi-v71) image. When you download images you have to download ARM-based images. (no x86 images will work on VM).
Also, you cannot start these images from AVD that launches from Android Studio 2.x
Make sure you have an environment variable named ANDROID_SDK_HOME set to path which is similar to the one at the top of the AVD manager (in image).
Once you do all of this and start an ARM-based image on a VMWare VM it will warn you that it is faster with HAXM but at least the image will run.
Finally, you can see if you attempt to launch your Virtual Device from the AVD Manager in Android Studio then it will warn you that Hyper-V needs to be turned off. Of course you cannot turn Hyper-V off on a VM.
EDIT -- Running Android 7 ARM Image
#mcflysoft asked about running an android 7 ARM image. At first I didn't think it worked, but if you open up your SDK manager and install the exact ARM OS image shown in the following picture, it will run on a Windows VM:
ARM image Containing Google APIs
I tried installing the ARM image that contained the Google APIs and that one would not ever start. There were failures logged which I could see in c:\> adb shell logcat.
Beware : It Is Really Slow
However, running Android 7 seems extremely slow and I don't see a web browser.
Not sure how helpful it may be to you, but you can get it working.
Good luck.
The simplest solution I've found so far is to use a device farm, for example Samsung's device farm:
https://developer.samsung.com/remotetestlab/galaxy/rtlDeviceList.action#444
It's free to use and you can deploy your apps just like in an emulator (Right Click -> Test -> Remote Debug Bridge -> follow the instructions).
And since those are real devices, the speed might be even better than on an emulator on your personal PC.
I've had the same problem so I'll post an answer in the hope that someone might find this useful in the future. I can run Android Studio in my VM but when I try to start up an emulator, I can't download an image due to "Your CPU does not support required features (VT-x or SVM)"
Although I didn't get a virtual device up and running, I got round the problem by using BlueStacks. You install BlueStacks on the VM. BlueStacks (at the moment) runs Android 7.1.1, SDK 25. Inside BlueStacks, go to Settings/Preferences and Enable Android Debugger Bridge (adb) following this set of instructions. Then you should be able to run your app on BlueStacks from inside Android Studio. Logcat can see any log statements from BlueStacks.
The alternative (without enabling the debugger bridge) is to locate the .apk file for your app and then open that with BlueStacks APK installer. Logcat still sees the traces.
It's slow on a VM. You also have to set android:testOnly="false" in your XML file
I think it's a problem with the SDK reference in Project Structure, but when I click run and I choose Launch Emulator nothing appears.
I had the same problem. I just created the AVD with 768 MB RAM and it did run fine!
UPDATE: November 2022
This answer was almost from 10 years ago and will most propably not work on current version of Android Studio.
I had a similar problem... Android Emulator doesn't open.
You need to discover the reason of this... You could run your emulator from the command line. For this you could copy and paste your command line from "Run" or "AVD" Android Studio console.
For example:
"{path}\android-sdk\tools\emulator.exe -avd Default_Nexus_5 -netspeed
full -netdelay none"
When you launch it from a command line terminal, It give you a message with the error.
In my case it was useful for discover the problem:
..\android-sdk\tools>emulator: ERROR: x86 emulation
currently requires hardware acceleration! Please ensure Intel HAXM is
properly installed and usable. CPU acceleration status: HAX kernel
module is not installed!
I needed to activate GPU acceleration with a tool to enable it on my machine.
I solved it installing from SDK Manager the tool HAXM...
I had another problem... For example i had assigned a bad url for skin path of my virtual device...
To solve it I have configured my virtual device with a valid skin from my platform sdk: '{path}\android-sdk\platforms\android-{number}\skins{SCREEN_SIZE}'
Now it is opening fine.
Update 8/8/2019:
For newer version of Android SDK, emulator path should be:
"{path}\android-sdk\emulator\emulator.exe"
reference (thank you #CoolMind)
In my case the android hangs at start up. I solved by wiping user data and forcing a cold boot, using Android Virtual Device Manager (Tools->AVD Manager)
It seems that "Waiting for target device to come online ..." is a generic message that appears, always, when the emulator can not start properly. And what's the cause of that? As you can see, there could be many causes.
I think the best way to find the concrete error with the emulator is to start it within a terminal. So:
1 - Open a terminal and go to this folder:~/Android/Sdk/tools
2 - Start the emulator with this command:
./emulator -avd EMULATOR_NAME -netspeed full -netdelay none
You can see the name of your (previously created with AVD Manager) emulators with this command:
./emulator -list-avds
If everything is ok, the program doesn't start, and it writes in the terminal the concrete error.
In my case, the application says that there is a problem loading the graphic driver ("libGL error: unable to load driver: r600_dri.so"). As it is explained here, it seems that Google packaged with Android Studio an old version of one library, and the emulator fails when it tries to use my graphic card.
The solution? Very easy: to use the system libraries instead of the packaged in Android Studio. How? Adding "-use-system-libs" at the end of the command. So:
./emulator -avd EMULATOR_NAME -netspeed full -netdelay none -use-system-libs
The definitive solution is to set the ANDROID_EMULATOR_USE_SYSTEM_LIBS environment variable to 1 for your user/system. With this change, when I run the emulator within Android Studio, it will also load the system libraries.
PS 1 - The easiest way I found to set the environment variable, it's to modify the script that launches the Android Studio (studio.sh, in my case it is inside /opt/android-stuido/bin), and add at the beginning this:
export ANDROID_EMULATOR_USE_SYSTEM_LIBS=1
PS 2 - I work with Debian Jessie and Android Studio 2.2.3. My graphic card is an ATI Radeon HD 6850 by Sapphire.
UPDATE December 2017: I had the same problem with Debian Stretch and Android Studio 3.0.1 (same graphic card). The same solution works for me.
1) Open SDK Manager and Download Intel x86 Emulator Accelerator (HAXM installer) if you haven't.
2) Now go to your SDK directory (C:\users\username\AppData\Local\Android\sdk, generally). In this directory Go to extra > intel > Hardware_Accelerated_Execution_Manager and run the file named "intelhaxm-android.exe".
In case you get an error like "Intel virtualization technology (vt,vt-x) is not enabled". Go to your BIOS settings and enable Hardware Virtualization.
3) Restart Android Studio and then try to start the AVD again.
It might take a minute or 2 to show the emulator window.
If you are new to Android studio, you need to follow few basics steps in configuring the emulator.
Make sure you have proper SDK installed
Make sure you have Intel HAXM & virtualization option enabled in your BIOS
Configure emulator correctly, download the Intel X86 Atom system image for better performance.
Go through this blog, http://www.feelzdroid.com/2015/05/android-studio-emulator-not-working-solution.html
Here they have explained clearly, what are the problems you face while running & resolution for the same.
With Ubuntu, I had the same problem. I solved it by changing file /dev/kvm permission to 777:
sudo chmod 777 /dev/kvm
you need to install "Android Emulator"
Go to
SDK Manger -> Appearance & Behavior -> System Settings -> Android SDK -> SDK Tools.
and set a hook at Android Emulator
I had the same issue in Android Studio 2.3.3 on Mac OS X 10.12.6 and the issue was caused by Android Studio using an old version of HAXM (6.0.3 when it should have been 6.2.1):
$ kextstat | grep intel
148 0 0xffffff7f8342c000 0x14000 0x14000 com.intel.kext.intelhaxm (6.0.3) 50449AFC-F7C6-38A0-B820-233E8A050FD6 <7 5 4 3 1>
Removing and reintalling HAXM from within Android Studio according to the instructions didn't work: https://software.intel.com/en-us/android/articles/installation-instructions-for-intel-hardware-accelerated-execution-manager-mac-os-x
Instead, download the HAXM installer manually or if that link expires, find it under https://software.intel.com/en-us/android/tools under Intel® Hardware Accelerated Execution Manager (Intel® HAXM).
After running the installer, it now shows that the current version of HAXM is installed:
$ kextstat | grep intel
169 0 0xffffff7f83472000 0x1d000 0x1d000 com.intel.kext.intelhaxm (6.2.1) 7B6ABC56-699C-3449-A0EC-BEB36C154E3C <7 5 4 3 1>
After upgrading HAXM manually, I'm able to launch x86_64 emulators.
Old answer, which might work instead (note that this didn't work for me for x86_64 images):
Create a new device:
Tools->Android->AVD Manager
+ Create Virtual Device
Tablet -> Nexus 7 -> Next
The Recommended tab should be highlighted.
Even though I had the API Level 25 SDK installed, it showed:
Nougat Download 25 x86 Android 7.1.1 (Google APIs)
So I clicked Download link which seems to have repaired the API Level 25 SDK. I finished creating my new device and it ran fine.
Unfortunately I had already deleted my old device, so if this works for someone else, please leave a comment here to let us know if your original device worked afterwards, thanks!
I'd like to post a link to this answer as it might help out any persons in this thread running into issues starting a virtual device with more then 768 mb of memory;
How to make an AVD with > 768MB RAM To emulate Galaxy devices
I have similar problem but I have solved it by switching to "Android 4.2.2 armeabi-v7a" (I needed to test it on Jelly Bean) in my AVD and it fixed the problem for me.
What seems to happen is that my processor is AMD and Intel X86 hardware emulation couldn't start. So I changed to use "API" other than "x86" (even though it recommended me to use x86). Hope this helps.
I spent several hours on this problem. What worked for me was opening the Tools->Android->SDK Manager, choosing Android SDK under System Settings on the left of the screen and going to the SDK tools tab. I then unchecked the settings for Android emulator and the Intel x86 Emulator Accelerator. I applied these changes, restarted Android Studio and then re-checked these option and applied the changes. The program reinstalled the emulator components and things seem to work. Hope this helps someone.
In Android Studio 2.3.3 I was able to get my AVD to start and run by changing Graphics in the Emulated Performance section from Automatic to Software-GLES 2.0:
I was able to infer this after following the advice at https://stackoverflow.com/a/44931679/1843329 and doing:
$ ./emulator -avd Nexus_4_API_21 -use-system-libs
which resulted in:
emulator: ERROR: Could not initialize OpenglES emulation, use '-gpu off' to disable it.
And when I did:
./emulator -avd Nexus_4_API_21 -use-system-libs -gpu off
the emulator then launched.
Wipe data of AVD like that picture and run your program. it's work for me.
If anyone is still having trouble with launching the avm take note of the android studio event log when you try to run the avm. When I tried running the avm android studio mentioned that my environment variable ANDROID_SDK_HOME was set to the same place as ANDROID_HOME and it shouldn't be. It recommends deleting the variable ANDROID_SDK_HOME which I did and then restarted android studio and avm started working.
Access the BIOS setting and turn on the virtualization feature. Mine was together with options like cpu fan speeds and stuffs.
Then make sure that Hyper-V is turned off in the windows features ON/OFF.
Then reinstall the intel HAXM, this should fix this issue.
edit this file:
sudo nano .android/avd/your_emulator.avd/config.ini
change lines
hw.gpu.enabled = yes
hw.gpu.mode = auto
to
hw.gpu.enabled = no
hw.gpu.mode = off
It works for me !
just check out if you have this problem "vt-x is disabled in bios"
in this case you need to enable virtualization technology bios
It probably won't start because you
no CPU is installed, then follow this answer: Unable to create Android AVD because of Target and CPU/ABI settings?
OR
don't have the correct SDK downloaded
If you migrated your project from Eclipse chances are that on running an emulator you will get stuck with this message not seeing anything else:
Waiting for device.
If you open the device manager you probably see something like this:
Just recreate your devices.
I've faced similar problem. You can edit the configuration or create new AVD with higher RAM. Also try increasing Heap to 128. Emulator will work smoothly even without HAXM
I had the same problem. I just Created New AVD with 768 MB RAM and it did run fine for me. I Used for API 22(Lollipop Version).
Besides using an external emulator such as bluestacks, you can also create a new new AVD and choose a system image with an ABI of armeabi-v7a with an API level of 21, instead of choosing ABI of x86 which fails.
I was having the same problem, i tried this and it worked. hope this will be useful as well.
Check if the following tools are installed or not in the Android SDK Manager as shown in this picture:
One reason could be that the chosen ABI does not fit to your system. For me, only arm64 is working.
I had the same problem on Windows 10, after I moved my android-SDK folder to D:/ as I was low on space on c:/.
It turned out that the Android emulator looks for Android SDK via Global (environment) Variables, not the path defined inside Android Studio.
So I edited the Environment variable of ANDROID_HOME and that was it.
If your emulator worked fine but suddenly it doesn't, just restart the machine and run again.It worked for me.
I faced the same problem. From some research that I did, I realized that my computer does not support virtualization. So I had to install BLUESTACKS.
Believe me it worked...you can also try it.
Just go to your directory C:\Android\sdk\platform-tools and double click adb
Ensure that your bluestack is running.
When you try to run the project, it automatically shows up to run with the bluestacks....just choose the bluestack and you are done.
If you want the setup of bluestack, just google it you can have a number of sites to download from for free.
I performed the procedure below, and was successful.
Execute this command down.
npx react-native info
This command return the log file the npm (example)
C:\Users\Robinho\AppData\Local\npm-cache\_logs\2020-11-22T19_35_23_842Z-debug.log
In my case was permission in dir file in windows SO.
I restarted my computer clicked F1 for the Bios setting and checked the virtualization technology box and saved the changes. The AVD worked without glitches after my computer booted. This article explains it. Hope somebody finds this helpful.
I was having this same problem. I decided to create (see the button at the lower-left). I defined the image to match my device and that seems to work.
I am thinking with Android Studio at version 1.0.1, there are still plenty of bugs.