The Android emulator is great for getting started in Android development. It is convenient that when you download the Android SDK for Windows, Linux or Mac that you get everything you need to start building your first App. This ease of use comes at a price. That price is the painfully slow performance of the emulator.
The rest of this article will offer three signs that the Android emulator is a pain. (Note: this article is part of a series about making Android Apps as a side project. Click here to read the introduction.)
1. For Profit Business To Solve The Pain
The first evidence that the Android emulator is a pain point is the existence of a business that solves the pain. That company is Genymotion. This company exists to make a better emulator and thus make the Android development experience better. They offer a free tier that will meet basic development needs.
I haven’t personally used their product but I can tell a story that drove the point home for me. I was talking to someone that was teaching an Android programming class. It was his first time teaching the course. He thought that the emulator would be good enough to use for the duration of the class. On the second day of class, one of his students suggested using Genymotion. The entire class of new Android developers switched over and never looked back.
2. Developers Don’t Use The Emulator
People tend to avoid doing things that cause pain (including but not limited to: banging your head against a brick wall, running ClearCase on Windows, and of course running the stock Android emulator). This is the second sign that using the Android emulator is painful. Just try to find a developer that actually uses it.
Using an actual device for development, testing and debugging is faster and more convenient than using the emulator. I can’t remember how long it has been since I used the emulator. These days the only reason I use it is to generate screen shots for devices that I don’t own. The emulator is good for this purpose, even if it is slow to boot and use.
3. Microsoft Makes A Better One
In a surprising bit of news, Microsoft has entered the Android emulator arena by offering their own version in the latest version of Microsoft Visual Studio. I don’t know if Google has taken notice of this development but I have. In my experience, Microsoft Visual Studio is the best IDE available*.
The major draw back to Visual Studio has been getting locked into the Microsoft eco system. It seems that there has been a strategic shift on the part of Microsoft to win developers over to their platform by opening up. I have been trying to resolve the cognitive dissonance of Microsoft offering tooling to support another company’s operating system. The best explanation I have found so far is the rumor that Microsoft makes more money on licensing patents for Android than on Windows phone. A very thin explanation indeed.
The Android emulator makes it easy to go ahead and and get started developing an App. Once you start to notice the pain of using the emulator there are alternatives to make your development workflow better. These include using an actual device, Genymotion and now Microsoft’s offering.
- An Introduction to Lessons Learned Making Android Apps As A Side Project
- Always Check The App Store
- The Best Book For Getting Started With Android
- Slides From A Talk I Gave About Lessons Learned Making Android Apps
- Get A Decent App Icon
- How To Make A Good Looking App
- The Importance Of Talking To People
*IDEs I have used include Texas Instruments Code Composer Studio, Jet Brains IntelliJ IDEA, Wind River Tornado, Apple Xcode and Eclipse.