Is MOTODEV faster than the Android Emulator? - android-emulator

I am running the Android SDK inside a Windows XP VM in VMWare. As such, the Android Emulator takes forever to boot...
I have recently heard of another emulator -- the MotoDev. For those of you who tried both, could you tell if the MotoDev has any speed advantage over the standard Android Emulator?

I'm the Product Manager for MOTODEV Studio. There is not a separate emulator inside Studio, but rather another view of the existing emulator process that is displayed inside an Eclipse View. It's no faster than what you already have and depending on which transfer mechanism you use (native window vs. VNC), it could be up to 20% slower (native window is faster for Windows and Linux).
Now, as for why your emulator is taking forever...
The first time you start an emulator image (i.e. "AVD"), it has to recreate the entire target filesystem on your local disk. Subsequent launches will take less time.
If I understand correctly, you're letting the Android emulator pretend it's running its' file system through QEMU (Arm Emulator) inside a Windows XP pseudo-file system (VMWare Disk Image) that's running on whatever host operating system you have (your OS). That's a lot of file system manipulation going on. If you can reduce the file system mapping, you're going to see speed improvements. Can you map the Windows Android SDK into a real folder on your native file system? Removing that layer of abstraction is going to speed things up.
Good luck!
Eric

Related

How to improve the performance of emulator in Android studio?

Whenever I run my small application in Android studio it takes more time to boot in emulator .
My system config as follows
RAM 4GB
PROCESSOR dual core
GPU intel integrated graphics
Intel’s x86 Emulator Accelerator Manager allows developers to run an emulator which performs much faster than a typical emulator running on an ARM-based CPU architecture. It should be noted that this technology only works on Intel VT (Virtualization Technology) enabled systems.You can also enable your emulator to use your machine’s GPU which should make rendering of animations or graphics much faster than it would otherwise be.
Did you install the HAXM driver? This makes the emulator usable but even then there is room for performance improvements...
(Of course your graphic card driver should be installed properly)

Emulator in AMD Processor is not working

I using AMD processor. I have installed everything related to eclipse perfectly. But I'm unable to start the emulator. program is hang and keep waiting for adb forever. The same issue in android studio also. Please give a solution.
I'm using a Android Studio on an HP x360, which is a nice little laptop but has a puny processor:). I spent ages getting the Intel Hax virtual machine thingy installed on my machine, as well as configuring bios (which I found AVAST blocked changes to, so had to uninstall it).
After probably hours this week (I'm new to Android) waiting for the emulator to do it's thing, start up, load program, and eat memory, I decided to plug in my phone (Moto-e).
This has made a massive improvement! Only takes a minute to compile and run now! You also have piece of mind that your app will run in the real world.
So as a newb to Android, I'd say don't bother with the emulator.... plug a real device in.
See here for setting up HAXM, if you have trouble installing, it may be antivirus etc blocking it....
Intel HAXM
All the best.
try these threads Virtualization threads

why opening more than one Emulator while running?

While doing programs I normally use AVD Manager to open the emulator, but nowadays while I am running a program a new emulator is being opened automatically, it also takes a long time almost 10-15 minutes. Can somebody please help to avoid this problem?
If ou press run in eclipse and it cannot see a connected device, sometimes devices/emulators fail to connect to the adb daemon so even if they are open they are not connected it will automatically launch an android emulator to fulfil the request which will be the default emulator in the AVD list. The reason it is slow is because you are using an arm image and that emulator is just really really slow, what you will want to do is set up an AVD to use an x86 image, you might need to download this through the android sdk manager first if you haven't already and then follow the information at: http://developer.android.com/tools/devices/emulator.html to get it set up to work as fast as possible (HAXM, graphics acceleration etc)

Android emulator shows nothing except black screen and adb devices shows "device offline"

I am just trying to start development in Android.
So, the problem is that when I try to launch an emulator by issuing the command emulator #A2, an emulator comes up on the screen. But even after waiting for as long as 2-3 hrs, all it shows is a black screen. Not even the Android home screen or the Android logo. Just a black screen. And while initially "adb devices" shows the emulator as offline.after 2-3 minutes the list of attached devices becomes blank.
I searched all over net and tried all the steps mentioned there like kill and restart adb, install java/android in a directory without spaces, but to no avail.
My Jdk and Android installations are in following folders:
C:\Java32BitInstallation
C:\AndroidSdkInstallation
Here's the list of stuff I have downloaded/installed for it:
Android SDK Tools, revision 13
Android SDK platforms tools, revision 10
SDK platform Android 4.0.3, API 15, revsion 1
Jdk jdk-7u3-windows-i586
In my path variable, I have added *C:\AndroidSdkInstallation\android-sdk\platform-tools;C:\AndroidSdkInstallation\android-sdk\tools;C:\Java32BitInstallation;C:\Java32BitInstallation\bin*
Also after reading somewhere from net I have added JAVA_HOME variable with its value as C:\Java32BitInstallation\ But still no use.
I have both IntelliJ and Eclipse installed on my system. But since for starting the emulator, I am not using any of these, I don't suspect any foul play with these.
I have been trying for past 10-12 days and have not been able to start the emulator, let alone write my first "Hello world" program.
Additional notes:
My system is a Windows 7 (64 bit) machine. Earlier I had installed 64 bit version of jdk, but the problem was present that time too. Now after searching on internet, I uninstalled that and installed 32 bit version of Java. But, again no use. One thing, though, this 32 bit version of Java (jdk 7 update 3), first install jre as part of jdk installation and then installs jre 7. So now I have 2 folders: jre and jre7 in the C:\Java32BitInstallation directory. Could this have to do anything with my emulator not turning up. Do I need to specify additional environment variables or modify the existing one?
BTW, did I mention the logcat shows nothing.
Update 25.07.2018:
The latest Android Studio version does not have this option anymore.
If the problem persists try to switch between the values of the "Emulated Performance" dropdown in the Verify Configuration dialogue (if available) or refer to the Configure Emulator graphics rendering and hardware acceleration.
Update 26.02.2014:
There are two hints in the Configuring Graphics Acceleration chapter from developer.android.com.
Caution: As of SDK Tools Revision 17, the graphics acceleration feature for the emulator is experimental; be alert for incompatibilities and errors when using this feature.
and
Start the AVD Manager and create a new AVD with the Target value of Android 4.0.3 (API Level 15), revision 3 or higher.
So Android 4.0.3 (API Level 15) seems to be the minimum requirement for graphics acceleration.
Original answer
I have had the same issue with the latest Android SDK.
I simply deactivated the checkbox "Use Host GPU" within the settings of the virtual device and it started working again.
The "Use Host GPU" does only work for me with Android 4.2 as "Target".
I have recently the same issue in emulator, Nexus 5 (Android O). I have go to Android Virtual Device Manager and Wipe User Data and it solved my Problem.
I had issues with getting the larger devices to emulate (Nexus7 and 10), while the phone sized emulators worked great. Would just keep getting a black screen with nothing for hours with the tablets. What helped was actually the OPPOSITE of what most people here are recommending: after setting the tick box for 'Use Host GPU' and setting the target to the highest android (4.4.2 at the time of this writing) the 7 and 10 work as expected!
Have you tried the power button :) ... it really worked for me. Actually emulator saves the device state before closing so at the last run if you switched off the device & closed the emulator then in the next run it will load previous state & display switched off phone aka blank screen. Although there might be many other causes of this issue.
Checking "Wipe user data" in the Launch Options fixed it for me.
Go to Android Virtual Device Manager->Select your device->Start->Check "Wipe user data"->Launch
Mac Users: Unfortunately, if you have an older Mac (late 2009 for example) and are using Yosemite, you cannot use HAXM for 64 bit architecture. According to the release notes on HAXM:
HAXM driver does not support emulating a 64 bit system image on Intel systems based on Core microarchitecture (Core, Core2 Duo etc.). All systems based on Nehalem and beyond are supported. (Corei3, Core i5 and Core i7 machines).
I spent a day trying to figure this problem out when I came upon this quote. The only thing that works is to use the non-x86 version of the latest OS (e.g. Lollipop Android 5.0.1 armeabi-v7a) in your AVD
How i solved the issue.. Open AVD manager, CLick on the drop-down arrow:
select >> wipe data after that u can select >> cold boot now..
It worked for me
Here is how i got it solved :
I ran the emulator with following command :
sudo /home/code/Android/Sdk/tools/emulator -avd Nexus_S_API_21 -netspeed full -netdelay none -debug-init -logcat '*:v'
and received the following in the output :
NAND: could not write file /tmp/android-code/TMP7.tmp, No space left on device. (similar error, could not reproduce it)
So, i just freed up some disk space from my /home directory in ubuntu (for windows free the C: drive space) and it then booted smoothly.
Do factory reset in "Android Device Manager".
In newer versions of Android Studio, this is called "Wipe Data", and it is in the right-click menu for the device in the virtual device manager.
Also had this issue out of the blue. Android studio was taking up 100% of CPU and in expo I had the following error:
Couldn't start project on Android: Error running adb: This computer is not authorized to debug the device. Please follow the instructions here to enable USB debugging: https://developer.android.com/studio/run/device.html#developer-device-options. If you are using Genymotion go to Settings -> ADB, select "Use custom Android SDK tools", and point it at your Android SDK directory.
Cold boot fixed it for me, like boltup_im_coding's answer. You can also cold boot this way if it's already running (with the black screen).
Make sure that you've installed the latest HAXM revision. I had the same blank screen problem with version 1.0.1 while 1.0.8 was already available. The installer can be downloaded via the SDK tools, to actually install the module you would have to execute
android-sdk-directory\extras\intel\Hardware_Accelerated_Execution_Manager\intelhaxm.exe
I changed it to always "cold boot" to fix my problem. Prior to this, when I ran adb devices it always showed as offline.
Had this issue on my Nexus 7,Nexus 10 & Pixel as well that means in all the emulators.
After days of struggling with this issue,
I figured it out finally.
Well, there are a lot of answers above which may work or may not for you because their configuration may vary slightly than yours.
I'll tell you my solution:
When creating those emulators, I checked Hardware - GLES 2.0 in Graphics for better performance.
And for me it was the issue.
If you've done the same then,
Go to AVD Manager -> Select your emulator -> Click on Edit configuration (in Actions column marked as pencil) -> in Emulated performance - Graphics -> Select Software - GLES 2.0.
Then click on Show Advanced Settings -> Set none for both Front and Back camera and hit Finish.
Now select your emulator in AVD Manager and click on Dropdown arrow in Actions column -> select Cold Boot Now.
And yay you're ready to go 😀
Helped for me (windows 10, intel):
Disable Hyper-V in windows
Uninstall HAXM ( "Intel Hardware Accelrated ..." in control panel)
reboot
Install HAXM using android studio (Settings -> Android SDK -> SDK Tools -> Intel x86 Emulator Accelerator (HAXM Installer) -> install)
Run emulator (Also you may try Wipe VD data/Cold boot VD)
By the sound of it you have a misconfigured device. If you do it will never start and never show anything in Logcat.
I'd recommend creating a new device using one of the default "Device Definitions" available in the AVD Manager. It's as easy as highlighting the device type you want in the "Device Definitions" tab and clicking the "Create AVD..." button, then filling out a few details. I'd start by adjusting "Internal Storage" to around 8GB and (maybe) an "SD Card" of 2GB while leaving everything else the same. Try starting the device and if you see "Android" pop up onscreen you're running. The first boot usually takes awhile so just hang on and watch Logcat for any issues (the "DDMS" perspective helps here).
If you still see a black screen with a default device definition you've got problems elsewhere that are causing the device to fail. Digging through logs may be your only chance if that's the case. You can always try re-downloading the ADT and re-installing the SDKs if nothing else works.
The goal here is to get you up and running with a (very) basic device, so don't shoot for uber impressive specs at this point, just shoot for trying to make it run. Once that happens try adjusting the settings one-by-one until you have it spec'd out the way you like. Just keep in mind that the emulator has its limitations and its no substitute for a real device (Although it works most of the time ;)
This is a known bug if you selected "Use host GPU" option while creating AVD.
https://code.google.com/p/android/issues/detail?id=28614
Uncheck the option and it should work!
Just try to set CPU/ABI on "Intel Atom (x86)" and deactivate the checkbox "Use Host GPU".
The Problems associated with the Black window of the emulator:
Happens when a new windows is installed. Problem associated with graphics of the windows is on the CD of windows .You have to Update windows and follow the following steps.
If Emulated Performance Graphics is (Software GLES then select it to-->Automatic)
Or
If Emulated Performance Graphics is (Automatic then select it to-->Software GLES)
this alternation can solve this problem.
I was having this issue on my Mac. When you create the device if you change "Graphics" from "Automatic" to "Software" it fixes the issue, or it least it did for me.
The following fix worked for me:
Locate the AVD folder in ~/.android/avd
Open config.ini
Replace the following settings with these values:
hw.gpu.enabled=yes
hw.gpu.mode=on
Save and close the file
Do not open the AVD settings screen within Android Studio or it will revert the above settings
Start the emulator
Thanks to Sunsugh Park for providing the fix.
I have reported this to Google at Black screen starting API 15. Please star the issue to get them to fix it.
Edit
Actually, while the emulator booted ok, it crashed after opening an app. So the emulator team must have disabled hardware graphics for a reason. Unfortunately, it appears to be impossible to get the emulator to work.
I had the same problem on API 28, and the fix turned out to be as below;
Enabling Skia rendering for Android UI
When using images for API 27 or later, the emulator can render the Android UI with Skia, which can render more smoothly and efficiently.
To enable Skia rendering, use the following commands in adb shell:
su
setprop debug.hwui.renderer skiagl
stop
start
https://developer.android.com/studio/run/emulator-acceleration#accel-graphics
I too got the same problem. When i changed the Eclipse from EE to Eclipse Classic it worked fine. in Win professional 64Bit.
Have a try it may work for you too..
For a workaround try Android 4.0.3 (API 15) with the Intel Atom (x86) image. I could capture DDMS screenshots with both "use host gpu" and HAXM enabled. Only this combination worked for me.
I also had the same problem. I figured out that the HAXM hardware accelerator was recently updated but not reinstalled since the update manager just updates the installer package which get saved to your hard drive. You will need to remove HAXM and then run that installer package to complete the update. Usualy this gets installed into ANDROID-SDK-ROOT\android-sdk\extras\intel\Hardware_Accelerated_Execution_Manager. Where ANDROID-SDK-ROOT is the location where your android sdk is located.
For me, I had to turned off both front and back camera. Hope this helps!
I use Microsoft's lightning fast Android Emulators utilizing Hyper-V, and I had the same black screen for every Android emulator that I created no matter how I set the GPU Mode (auto, host, mesa, angle, swiftshader, off). Though my situation is apparently different form that of the OP, I thought it might be useful for those using Microsoft Android emulators and coming here after searching "android emulator black screen".
The solution in my case is updating all the Android tools:
Visual Studio > Tools > Android > Android SDK Manager > Tools
As of today (2019-02-01), Android emulators would have this black screen problem if you have a fresh install of Visual Studio 2017. VS shows notifications automatically for updates of NuGet packages, extension tools, etc., but NOT for Android tool updates. You have to check and update them manually.
I've managed to launch and debug an Android testing application on the Android emulator through Delphi.
I have Windows 7 64 bit, 4GB RAM, a dual core processor at 3GHz and Delphi XE 5.
Below is a link that I've prepared in a hurry for my colleagues at work but I will make it better by the first chance:
Debug Android Apps with Delphi
Forgive my English language but I am not a native English speaker. I hope you will find this small tutorial
I was having this problem after I got the blue screen of death while running my emulator. Here's my solution (for Windows at least). My solution is too completely re-install the AVD. The problem with the normal un-installation process for Android Studio is that it doesn't remove everything, so if your AVD files are corrupted, they will remain corrupted on re-install.
In order to fix this, I deleted two directories:
C:\Users\(My Username)\.Android
and
C:\Users\(My Username)\.AndroidStudio3.1
Then I re-ran in the installer.
I think this is the most foolproof solution if your emulator was previously working because it forces a complete refresh of the AVD component of Android Studio.
Another source of error could be the length of the PATH system variable (on Windows systems). Running intel based images with a PATH variable longer than 2047 characters, seems to pass an empty value of this variable to the console / emulator, so it cannot start correctly.
Here is an article describing this behaviour:
https://software.intel.com/en-us/articles/limitation-to-the-length-of-the-system-path-variable
I had the same problem. Reducing the total length of this system variable to 1354 chars by removing unused / non-existent paths fixed it for me.
I had the same problem. Here's my solution (for Mac OS). I just downgrade the version of the Android Emulator (from 28.0.3 to 27.3.8). Here is a detailed instruction how to do it.

Nokia s60 emulator for linux

I am using EclipseMe on Ubuntu. I want an emulator that can emulate mouse movements on screen.
Is there an s60 emulator for linux?
Edit:
Does net beans has an in built emulator that can emulate mouse movement on device screen?
Netbeans uses the Sun Wireless Toolkit.
The JavaME emulator it contains can me made into a touchscreen emulator. Read the accompanying documentation, it should be as simple as setting a variable inside a configuration file before stating the emulator.
You can find the specification for MIDP (the top layer of the JavaME platform you're probably targetting) at http://jcp.org/en/jsr/detail?id=118
Look at the javax.microedition.lcdui.Canvas class, you will find several methods used to deal with "pointer". While they are more often used to handle touchscreen event, they also map to mouse/joystick clicks on emulators.
You can definitely get the MIDP pointerDragged events when running the emulator on Linux.
This is basic MIDP, no need for fancy JSR-226 (e-swt) support.
The Windows only Symbian Emulator (EPOC) is being scrapped for a QEMU based emulator that will run on all platforms. This will likely be available within 6 months or so.
At the moment, I run Windows XP inside VirtualBox on my Mac for Symbian development. It works fine, but is of course not the ideal solution.
The full symbian OS emulator with application interfaces for Java and Symbian C is windows based unfortunately.
I usually get a MS Windows Vista install disk and install that into a VM like VirtualBox and than install the symbian SDks on top of that..
Works best on those 4 core desktop 64-bit computers now on sale for $687 as you get access to full 8 gig ram and close to 1 terabyte hard drive..