I've been trying to use the Android Emulator after downloading Android Studio. I've used an old Samsung S4 before, but need something compatible to Marshmallow for certain features.
The problems I am seeing are:
-Emulator doesn't run
-Android screen shows as if it's preparing to boot but doesn't
-When android screen disappears after hour of waiting, screen shows dialog that says the system is unresponsive, and to wait or kill the
process
-When I try to run app on AVD while that screen is showing, error from Android Studio pops up saying that the AVD didn't install APK's
correctly and to uninstall them or cancel.
The solutions I have tried:
-Lowering AVD RAM to 512 & 236 MB
-Turning emulator cameras off
-Turning off Audio
-Graphics preference set to software
-Deleting and redownloading everything
-Checking to make sure API matches SDK
-Trying different API (25)
-Downloading BlueStacks (Didn't realize it uses Kitkat)
Most of the solutions for a slow/not working emulators were related to the Emulator settings of which I changed and tried. I've been stuck on this for three days and am desperate for a solution so I can test my app which requires Android API of 23 +.
A little side note just in case I'm out-of-luck. I'm using a mid-2010 MAC running on OSX Sierra, Core 2 duo processor, 16GB RAM, 1TB hard drive.
**Update
I've ran the emulator through the command line and here is the output that I am receiving. The emaulator is still loading on the Android Screen but no more output has been logged for the last 30 minutes after "Adb connected, start proxing data".
Macs-MacBook-Pro-2:sdk joncorrin$ tools/emulator #Nexus_5X_API_23 -verbose
emulator:Android emulator version 25.3.0.0 (build_id 3394391)
emulator:Found AVD name 'Nexus_5X_API_23'
emulator:Found AVD target architecture: x86
emulator:argv[0]: 'tools/emulator'; program directory: '/Users/mac/Library/Android/sdk/tools'
emulator: Found directory: /Users/mac/Library/Android/sdk/system-images/android-23/google_apis/x86/
emulator:Probing for /Users/mac/Library/Android/sdk/system-images/android-23/google_apis/x86//kernel-ranchu: file exists
emulator:Auto-config: -engine qemu2 (based on configuration)
emulator: Found directory: /Users/mac/Library/Android/sdk/system-images/android-23/google_apis/x86/
emulator:try dir /Users/mac/Library/Android/sdk/tools
emulator:try dir tools/
emulator:try dir emulator
emulator:Found target-specific 64-bit emulator binary: emulator/qemu/darwin-x86_64/qemu-system-i386
emulator:Adding library search path: 'emulator/lib64'
emulator: Found directory: /Users/mac/Library/Android/sdk/system-images/android-23/google_apis/x86/
emulator: Found directory: /Users/mac/Library/Android/sdk/system-images/android-23/google_apis/x86/
emulator:GPU emulation is disabled
emulator: Adding library search path for Qt: 'emulator/lib64/qt/lib'
emulator: Setting Qt plugin search path: QT_QPA_PLATFORM_PLUGIN_PATH=emulator/lib64/qt/plugins
emulator: Running :emulator/qemu/darwin-x86_64/qemu-system-i386
emulator: qemu backend: argv[00] = "emulator/qemu/darwin-x86_64/qemu-system-i386"
emulator: qemu backend: argv[01] = "#Nexus_5X_API_23"
emulator: qemu backend: argv[02] = "-verbose"
emulator: Concatenated backend parameters:
emulator/qemu/darwin-x86_64/qemu-system-i386 #Nexus_5X_API_23 -verbose
emulator: WARNING: Crash service did not start
emulator: Android virtual device file at: /Users/mac/.android/avd/Nexus_5X_API_23.ini
emulator: virtual device content at /Users/mac/.android/avd/Nexus_5X_API_23.avd
emulator: virtual device config file: /Users/mac/.android/avd/Nexus_5X_API_23.avd/config.ini
emulator: using core hw config path: /Users/mac/.android/avd/Nexus_5X_API_23.avd/hardware-qemu.ini
emulator: Found AVD target API level: 23
emulator: Read property file at ./system-images/android-23/google_apis/x86//build.prop
emulator: No boot.prop property file found.
emulator: found skin 'nexus_5x' in directory: /Users/mac/Library/Android/sdk/skins/
emulator: autoconfig: -skin nexus_5x
emulator: autoconfig: -skindir /Users/mac/Library/Android/sdk/skins/
emulator: autoconfig: -kernel ./system-images/android-23/google_apis/x86//kernel-ranchu
emulator: Target arch = 'x86'
emulator: Auto-config: -qemu -cpu qemu32
emulator: Auto-detect: Kernel image requires new device naming scheme.
emulator: Auto-detect: Kernel does not support YAFFS2 partitions.
emulator: autoconfig: -ramdisk ./system-images/android-23/google_apis/x86//ramdisk.img
emulator: Using initial system image: ./system-images/android-23/google_apis/x86//system.img
emulator: autoconfig: -data /Users/mac/.android/avd/Nexus_5X_API_23.avd/userdata-qemu.img
emulator: autoconfig: -initdata /Users/mac/.android/avd/Nexus_5X_API_23.avd/userdata.img
emulator: autoconfig: -cache /Users/mac/.android/avd/Nexus_5X_API_23.avd/cache.img
emulator: autoconfig: -sdcard /Users/mac/.android/avd/Nexus_5X_API_23.avd/sdcard.img
emulator: Increasing RAM size to 1024MB
emulator: System image is read only
emulator: GPU emulation is disabled
emulator: Found 2 DNS servers: 75.75.75.75 75.75.76.76
emulator: trying to load skin file '/Users/mac/Library/Android/sdk/skins//nexus_5x/layout'
emulator: CPU Acceleration: working
emulator: CPU Acceleration status: HAXM version 6.0.5 (3) is installed and usable.
emulator: Adjusting Contiguous Memory Allocation of 1080x1920 framebuffer for software renderer to 16MB.
emulator: Found 2 DNS servers: 75.75.75.75 75.75.76.76
Content of hardware configuration file:
hw.cpu.arch = x86
hw.cpu.model = qemu32
hw.cpu.ncore = 1
hw.ramSize = 1024
hw.screen = multi-touch
hw.mainKeys = false
hw.trackBall = false
hw.keyboard = true
hw.keyboard.lid = false
hw.keyboard.charmap = qwerty2
hw.dPad = false
hw.gsmModem = true
hw.gps = true
hw.battery = true
hw.accelerometer = true
hw.audioInput = true
hw.audioOutput = true
hw.sdCard = true
hw.sdCard.path = /Users/mac/.android/avd/Nexus_5X_API_23.avd/sdcard.img
disk.cachePartition = true
disk.cachePartition.path = /Users/mac/.android/avd/Nexus_5X_API_23.avd/cache.img
disk.cachePartition.size = 66m
hw.lcd.width = 1080
hw.lcd.height = 1920
hw.lcd.depth = 16
hw.lcd.density = 420
hw.lcd.backlight = true
hw.gpu.enabled = false
hw.gpu.mode = guest
hw.gpu.blacklisted = no
hw.initialOrientation = Portrait
hw.camera.back = emulated
hw.camera.front = emulated
vm.heapSize = 256
hw.sensors.light = true
hw.sensors.pressure = true
hw.sensors.humidity = true
hw.sensors.proximity = true
hw.sensors.magnetic_field = true
hw.sensors.orientation = true
hw.sensors.temperature = true
hw.useext4 = true
kernel.path = ./system-images/android-23/google_apis/x86//kernel-ranchu
kernel.newDeviceNaming = yes
kernel.supportsYaffs2 = no
disk.ramdisk.path = ./system-images/android-23/google_apis/x86//ramdisk.img
disk.systemPartition.initPath = ./system-images/android-23/google_apis/x86//system.img
disk.systemPartition.size = 1280m
disk.dataPartition.path = /Users/mac/.android/avd/Nexus_5X_API_23.avd/userdata-qemu.img
disk.dataPartition.size = 2g
disk.encryptionKeyPartition.path = /Users/mac/.android/avd/Nexus_5X_API_23.avd/encryptionkey.img
avd.name = Nexus_5X_API_23
.
QEMU options list:
emulator: argv[00] = "emulator/qemu/darwin-x86_64/qemu-system-i386"
emulator: argv[01] = "-dns-server"
emulator: argv[02] = "75.75.75.75,75.75.76.76"
emulator: argv[03] = "-serial"
emulator: argv[04] = "null"
emulator: argv[05] = "-cpu"
emulator: argv[06] = "android32"
emulator: argv[07] = "-enable-hax"
emulator: argv[08] = "-m"
emulator: argv[09] = "1024"
emulator: argv[10] = "-lcd-density"
emulator: argv[11] = "420"
emulator: argv[12] = "-kernel"
emulator: argv[13] = "./system-images/android-23/google_apis/x86//kernel-ranchu"
emulator: argv[14] = "-initrd"
emulator: argv[15] = "./system-images/android-23/google_apis/x86//ramdisk.img"
emulator: argv[16] = "-object"
emulator: argv[17] = "iothread,id=disk-iothread"
emulator: argv[18] = "-drive"
emulator: argv[19] = "if=none,overlap-check=none,cache=unsafe,index=0,id=system,file=/Users/mac/.android/avd/Nexus_5X_API_23.avd/system.img.qcow2,read-only"
emulator: argv[20] = "-device"
emulator: argv[21] = "virtio-blk-pci,drive=system,iothread=disk-iothread,modern-pio-notify"
emulator: argv[22] = "-drive"
emulator: argv[23] = "if=none,overlap-check=none,cache=unsafe,index=1,id=cache,file=/Users/mac/.android/avd/Nexus_5X_API_23.avd/cache.img.qcow2,l2-cache-size=1048576"
emulator: argv[24] = "-device"
emulator: argv[25] = "virtio-blk-pci,drive=cache,iothread=disk-iothread,modern-pio-notify"
emulator: argv[26] = "-drive"
emulator: argv[27] = "if=none,overlap-check=none,cache=unsafe,index=2,id=userdata,file=/Users/mac/.android/avd/Nexus_5X_API_23.avd/userdata-qemu.img.qcow2,l2-cache-size=1048576"
emulator: argv[28] = "-device"
emulator: argv[29] = "virtio-blk-pci,drive=userdata,iothread=disk-iothread,modern-pio-notify"
emulator: argv[30] = "-drive"
emulator: argv[31] = "if=none,overlap-check=none,cache=unsafe,index=3,id=encrypt,file=/Users/mac/.android/avd/Nexus_5X_API_23.avd/encryptionkey.img.qcow2,l2-cache-size=1048576"
emulator: argv[32] = "-device"
emulator: argv[33] = "virtio-blk-pci,drive=encrypt,iothread=disk-iothread,modern-pio-notify"
emulator: argv[34] = "-drive"
emulator: argv[35] = "if=none,overlap-check=none,cache=unsafe,index=4,id=sdcard,file=/Users/mac/.android/avd/Nexus_5X_API_23.avd/sdcard.img.qcow2,l2-cache-size=1048576"
emulator: argv[36] = "-device"
emulator: argv[37] = "virtio-blk-pci,drive=sdcard,iothread=disk-iothread,modern-pio-notify"
emulator: argv[38] = "-netdev"
emulator: argv[39] = "user,id=mynet"
emulator: argv[40] = "-device"
emulator: argv[41] = "virtio-net-pci,netdev=mynet"
emulator: argv[42] = "-netdev"
emulator: argv[43] = "user,id=mynet2,net=10.0.3.0/24"
emulator: argv[44] = "-device"
emulator: argv[45] = "virtio-net-pci,netdev=mynet2"
emulator: argv[46] = "-show-cursor"
emulator: argv[47] = "-L"
emulator: argv[48] = "emulator/lib/pc-bios"
emulator: argv[49] = "-soundhw"
emulator: argv[50] = "hda"
emulator: argv[51] = "-vga"
emulator: argv[52] = "none"
emulator: argv[53] = "-append"
emulator: argv[54] = "qemu=1 androidboot.hardware=ranchu clocksource=pit android.qemud=1 console=0 console=0 android.checkjni=1 qemu.gles=2 qemu.encrypt=1 cma=32M ndns=2"
emulator: argv[55] = "-android-hw"
emulator: argv[56] = "/Users/mac/.android/avd/Nexus_5X_API_23.avd/hardware-qemu.ini"
Concatenated QEMU options:
emulator/qemu/darwin-x86_64/qemu-system-i386 -dns-server 75.75.75.75,75.75.76.76 -serial null -cpu android32 -enable-hax -m 1024 -lcd-density 420 -kernel ./system-images/android-23/google_apis/x86//kernel-ranchu -initrd ./system-images/android-23/google_apis/x86//ramdisk.img -object iothread,id=disk-iothread -drive if=none,overlap-check=none,cache=unsafe,index=0,id=system,file=/Users/mac/.android/avd/Nexus_5X_API_23.avd/system.img.qcow2,read-only -device virtio-blk-pci,drive=system,iothread=disk-iothread,modern-pio-notify -drive if=none,overlap-check=none,cache=unsafe,index=1,id=cache,file=/Users/mac/.android/avd/Nexus_5X_API_23.avd/cache.img.qcow2,l2-cache-size=1048576 -device virtio-blk-pci,drive=cache,iothread=disk-iothread,modern-pio-notify -drive if=none,overlap-check=none,cache=unsafe,index=2,id=userdata,file=/Users/mac/.android/avd/Nexus_5X_API_23.avd/userdata-qemu.img.qcow2,l2-cache-size=1048576 -device virtio-blk-pci,drive=userdata,iothread=disk-iothread,modern-pio-notify -drive if=none,overlap-check=none,cache=unsafe,index=3,id=encrypt,file=/Users/mac/.android/avd/Nexus_5X_API_23.avd/encryptionkey.img.qcow2,l2-cache-size=1048576 -device virtio-blk-pci,drive=encrypt,iothread=disk-iothread,modern-pio-notify -drive if=none,overlap-check=none,cache=unsafe,index=4,id=sdcard,file=/Users/mac/.android/avd/Nexus_5X_API_23.avd/sdcard.img.qcow2,l2-cache-size=1048576 -device virtio-blk-pci,drive=sdcard,iothread=disk-iothread,modern-pio-notify -netdev user,id=mynet -device virtio-net-pci,netdev=mynet -netdev user,id=mynet2,net=10.0.3.0/24 -device virtio-net-pci,netdev=mynet2 -show-cursor -L emulator/lib/pc-bios -soundhw hda -vga none -append 'qemu=1 androidboot.hardware=ranchu clocksource=pit android.qemud=1 console=0 console=0 android.checkjni=1 qemu.gles=2 qemu.encrypt=1 cma=32M ndns=2' -android-hw /Users/mac/.android/avd/Nexus_5X_API_23.avd/hardware-qemu.ini
emulator: Starting QEMU main loop
Hax is enabled
Hax ram_size 0x40000000
emulator: registered 'boot-properties' qemud service
emulator: Adding boot property: 'qemu.sf.fake_camera' = 'both'
emulator: Adding boot property: 'ro.opengles.version' = '131072'
emulator: Adding boot property: 'dalvik.vm.heapsize' = '256m'
emulator: Adding boot property: 'qemu.hw.mainkeys' = '0'
emulator: Adding boot property: 'qemu.adb.secure' = '1'
emulator: Adding boot property: 'qemu.sf.lcd_density' = '420'
HAX is working and emulator runs in fast virt mode.
emulator: goldfish_events.have-dpad: false
emulator: goldfish_events.have-trackball: false
emulator: goldfish_events.have-camera: true
emulator: goldfish_events.have-keyboard: true
emulator: goldfish_events.have-lidswitch: false
emulator: goldfish_events.have-touch: false
emulator: goldfish_events.have-multitouch: true
emulator: control console listening on port 5554, ADB on port 5555
Not using any http proxy
emulator: android_hw_fingerprint_init: fingerprint qemud listen service initialized
emulator: onGuestSendCommand: [0x7f80950cdc00] Adb connected, start proxing data
**UPDATE
output logged:
emulator: _hwFingerprint_connect: connect finger print listen is called
emulator: got message from guest system fingerprint HAL
in the last 30 minutes.
Android shows laggy screen that said "Starting Android Process", then 30 minutes later showed frozen screen that stated the system UI is not responding, with a allow debugging dialog behind it. See images. When I click, the UI is not responding and the logs are not outputting anything beyond what I posted.
This one worked for me
Delete all AVD's that you currently have.
Go to Preferences >> Android SDK >> SDK Tools
Uninstall Android Emulator
Restart Android Studio.
Re-install Android Emulator from the same place.
Create a new emulator !
Hope this Helps.
Do you have Docker for Mac installed by any chance? I was just facing the exact same issue and stopping Docker fixed the problem...
You could also try launching the emulator from the command line.
cd $ANDROID_SDK_ROOT
tools/emulator -list-avds
tools/emulator #name_of_avd -verbose
If you see any failures you can share the output of the last command. The ANDROID_SDK_ROOT environment value should point to the android SDK location. You can find this in android studio under the menu tools->sdk manager.
I got this problem when updated to MacOS Big Sur, what worked for me was to update Android Emulator in SDK Tools.
Android Studio -> Preferences -> Appearance & Behavior -> System Settings -> Android SDK -> SDK Tools -> Select Android Emulator -> OK
Here's what finally worked for me:
In Android Studio (Mac OS X) open up AVD Manager. Click the triangle pointing downwards on the offending Android Virtual Device to get a drop-down menu. Then, strike down upon Delete with great vengeance and furious anger.
With that out of the way, click + Create Virtual Device…. Leave most settings on default and then run your new virtual device like it is a tasty burger.
Hopefully this will work for you too. ^^
For me, changing the 'Graphics' from 'Automatic' to 'Software - GLES 2.0' in the Virtual Device Configuration , worked form me on my macOS Sierra
Another option if the emulator just crashes before launching the main window on mac: as varun mentioned, Docker running will be one culprit, and something else that uses vcpu’s, in my case - Virtualbox. Make sure to kill all vbox... processes.
On my old Mac (mid 2010 2,8Ghz i5) I had same problem and I want to share my solution with community for future use:
Uninstall all AVD from list.
Download last version of HAXM https://github.com/intel/haxm [update 03.03.2019]
Install it manually (it will uninstall previous version automatically by request)
Generate new AVD for x86 image.
[update 03.03.2019] For more information https://software.intel.com/en-us/android/articles/speeding-up-the-android-emulator-on-intel-architecture
I had the same issue and was running El Capitan. I tried all of the above solutions listed but none of them worked and couldn't get the emulator to work.
So then I looked up the error log and as expected it was due to incompatible libs. Here's a snapshot of the log:
Process: qemu-system-x86_64 [891]
Path: /Users/USER/Library/Android/*/emulator
Identifier: qemu-system-x86_64
Version: ???
Code Type: X86-64 (Native)
Parent Process: studio [801]
Responsible: qemu-system-x86_64 [891]
User ID: 501
Date/Time: 2020-03-24 16:45:31.709 -0400
OS Version: Mac OS X 10.11.6 (15G22010)
Report Version: 11
Anonymous UUID: C6045A70-81F1-1E8A-7E49-13842E8765D9
Time Awake Since Boot: 1000 seconds
System Integrity Protection: enabled
Crashed Thread: 0
Exception Type: EXC_BREAKPOINT (SIGTRAP)
Exception Codes: 0x0000000000000002, 0x0000000000000000
Exception Note: EXC_CORPSE_NOTIFY
Application Specific Information:
dyld: launch, loading dependent libraries
DYLD_LIBRARY_PATH=/Users/patel/Library/Android/sdk/emulator/lib64/qt/lib:/Users/patel/Library/Android/sdk/emulator/lib64/gles_swiftshader:/Users/patel/Library/Android/sdk/emulator/lib64/gles_angle11:/Users/patel/Library/Android/sdk/emulator/lib64/gles_angle9:/Users/patel/Library/Android/sdk/emulator/lib64/gles_angle:/Users/patel/Library/Android/sdk/emulator/lib64
Dyld Error Message:
Symbol not found: _kSecAttrKeyTypeECSECPrimeRandom
Referenced from: /Users/USER/Library/Android/*/libQt5WebEngineCoreAndroidEmu.5.12.1.dylib (which was built for Mac OS X 10.12)
Expected in: /System/Library/Frameworks/Security.framework/Versions/A/Security
in /Users/USER/Library/Android/*/libQt5WebEngineCoreAndroidEmu.5.12.1.dylib
You may notice the line
Referenced from: /Users/USER/Library/Android/*/libQt5WebEngineCoreAndroidEmu.5.12.1.dylib (which was built for Mac OS X 10.12)
So, I upgraded to High Sierra and the issue went away.
This worked for me; I am using OS EL-Capitan, I don't want to upgrade to High Sierra, I can't use android studio emulator after upgrade because of an error like this:
Emulator: Sorry, "qemu-system-x86_64" can not be run on this version
of macOS. Qt requires macOS 10.12.0 or later
Solved in 2 steps:
Delete folder sdk on :
/Users/[username]/Library/Android/sdk
Restore folder sdk with before. There are some places to download on the Internet
After updating DisplayLink Manager to 1.1.0 with macOS Catalina (10.15.6) no emulator would start. The emulator didn't show up in a window it was just the icon on the menu bar. I checked all the previous solutions and nothing worked.
After I unplugged the docking station, the emulator started normal and I could plug the docking station again.
I've updated #Saneesh answer for Android studio 4+
Delete all AVD's that you currently have.
Go to Preferences >> Appearance & Behavior >> System Settings >> Android SDK >> SDK Tools
Uninstall Android Emulator
Restart Android Studio.
Re-install Android Emulator from the same place.
Create a new emulator!