I'm trying to develop on my old netbook but the emulator never completely loads. It keeps working and sometimes it freezes but then it doesn't finish booting.

I'm not really skilled in Android development and I would like to know if I can tweak the emulator to require less computational power. I'm learning new stuff so I don't have to run big stuff, I just need to start the emulator and launch a simple application


I would say the simple answer is no. The emulator performs fairly poorly on high-end computers, so even if you got it to start up the performance would be beyond horrible.

| improve this answer | |

There is a minimum possible processor speed for Android to run correctly. If you don't get that speed, part of the system thinks another part has crashed (it gives it about 5 seconds to finish initialising and panics if it doesn't) and terminates it, which leaves the system in an unusable state. On the emulator, processors slower than about 2.4GHz Pentium 4s fail. You can get it to work on slightly slower machines by turning off the boot animation, but even that isn't reliable.

When I needed to do some development on a machine too slow for the emulator, I used android-x86 in a virtualbox virtual machine. It works nicely, unless you need to interact with text messages or phone calls.

| improve this answer | |

I'm not really skilled in Android development and I would like to know if I can tweak the emulator to require less computational power.

There are a couple things you can tweak to make the emulator less resource hungry. The two most important knob is:

  1. RAM: the emulator always allocates all of the emulated device's RAM into the host's RAM even if it's unused by the emulated device. If you specify the emulated device to have a RAM larger than the free RAM that you normally have on the host without running the emulator, then the host OS will have to swap and invariably causes trashing.
  2. Screen size: use lower resolution screen, the default screen resolution for Android 3.x and 4.x is way too high to run smoothly in even high-end hardware.

I've been able to successfully develop several simple apps on my old laptop, a 1.8Ghz dual core with 1GB RAM. After proper tweaks, the emulator still feels slow and laggy, but it's usable.

Also, I haven't tried it yet, but you might want to try Android-x86 in VirtualBox or QEMU. The emulator that comes with the SDK emulates ARM architecture, therefore there is an overhead in translating ARM to x86 instruction; most Intel and AMD CPU used in laptop uses the x86 architecture and have support for x86 emulation to significantly reduce emulation overhead. If your app runs on Dalvik, and doesn't use the NDK, then theoretically you should have no problem using Android-x86.

| improve this answer | |

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.