Which Android Handsets Are Good for Developing Android Apps?

Hopefully these guidelines will help you choose which device to get for Android development.

Someone was asking on the Android Enthusiasts forum: Will an Android phone connect to Wi-Fi and download apps without a subscription? When I was answering this question, I was thinking to myself – the best way to get into developing apps on iOS is to do it on an iPod Touch. Likewise, the best way in my opinion to get into developing apps for Android is to do it on a WiFi-only device. – something that connects to WiFi, doesn’t cost too much and most importantly, will not interfere with your normal communications.

If you’ve already got an Android phone:

I’ve already got an Android phone you say. Why don’t I just develop on that? You can. Just like an iPhone developer can develop on their iPhone. However, what if you want to install a userdebug build or change some settings on the device for development or testing that makes it behave differently? You run the risk of messing up your phone, at least in the short term, and losing phone calls, texts, etc.

Still, using your existing Android phone is probably the most straightforward way to develop if you’ve already got an Android handset. After all, when I started in Mac development, I developed on the Mac that I had.

You still will probably want to get other handsets though, because you won’t be able to test on different platform versions and as you can see by the chart below, there are a lot of them in the wild currently.

Android Platform Versions as of October 1, 2012

If you don’t have an Android phone:

Option 1. Cheap, coverage of 2.2 or 2.3:

Buy a prepaid phone from a carrier like Virgin Mobile, but don’t activate it (unless you want a lower phone bill.)

A good choice right now is the LG Optimus Slider, which will give you a test device for Android 2.2, aka Froyo. Froyo at the time of this writing still holds 12.9% of the market, which is substantial, while earlier versions represent less than 4% of the market. It also gives you test coverage for slider keyboards, which will give you some interesting behavior.

Another good choice is the LG Optimus Elite, which runs on Android 2.3, aka Gingerbread. Gingerbread is the heavyweight in the arena, representing 55.8% of all devices in the Android universe. If your primary Android phone isn’t on 2.3, you should definitely get this or another 2.3 device.

Option 2. Premium, Nexus, Google Experience, coverage of 4.0 or 4.1:

Once upon a time, you had to spend $529 to get an unlocked Google Experience device. And you had to go to Best Buy to get it. That was the Samsung Nexus S, which still remains an interesting device, mostly because you can use flash it with factory images to test 2.3, 4.0, and 4.1. You could say it is the doppleganger of the Android world. However, it is relatively pricey.

The device to get right now is the Samsung Galaxy Nexus, available direct from Google for $349. This is probably the best Android phone on the market, fast, smooth and with the pure Google Experience. Galaxy Nexus (or GNex) runs 4.1 right now, but you can flash it with a factory image back to 4.0.

Why should you get a Nexus device?
You should get one because it doesn’t have any sort of manufacturer skin that could slow you down, nor carrier added apps, nor carrier locked bootloaders. They also tend to have additional developer-friendly features and benefits. Many of the proprietary drivers are available for including in custom ROMs. Factory images are available for Nexus devices, meaning that if you want to re-install a specific platform level, say go back and test on 4.0, it is easy to do so. Also if you create a custom ROM and it doesn’t work, you can get it back to its factory default using the factory image, where other phones could be bricked.

Other considerations:

Density – the LG Optimus phones I mentioned are mdpi or medium density, the baseline (1x). Nexus S is hdpi or high density (1.5x). Galaxy Nexus is xhdpi or extra high density (2x).

GPS – all the suggested support GPS, which is useful for apps that require location.

NFC – except for the LG Optimus Slider, the others support NFC, which is a consideration if your app will utilize NFC. Be careful when installing the battery as most of the NFC antennas are in the back case.

Speed – LG Optimus Slider is the slowest, followed by the LG Optimus Elite, then the Nexus S and Galaxy Nexus is the fastest. While Galaxy Nexus will be pleasant to work with, using a slow device is actually useful because it will help you identify places where your apps are noticeably slow.

Connectors – all these devices thanksfully use a standard microUSB connector.

How many devices should you have?
If you can afford it, it is best to have at least one of each Android platform level that your apps are targeting. Currently, 2.2+ gives you 96% of the market, which means 4 devices: 2.2, 2.3, 4.0, 4.1. However, start with what you have and build from there as needed. Fill in the gaps with emulator configurations, aka AVDs (Android Virtual Devices).

What about tablets? I’ll cover those in the near future, but the short answer is: buy a Nexus 7 direct from Google. It is a Nexus device, it runs the latest (4.1 Jelly Bean), and is a bargain at $199.

2 thoughts on “Which Android Handsets Are Good for Developing Android Apps?

  1. Joe Lapp

    Thank you Luis. Do you know which tablets have reliable multi-touch? Some of the Nexus 7 devices must be well-grounded to be able to multi-touch, as you can see in some youtube videos. Mine is one of those, and I can duplicate the problem using the multi-touch testing apps. Holding it in my hand solves the main problem — failure to distinguish fingers having identical x- or y-coordinates — but it still often confuses fingers that get close together. My Motorola Droid RAZR phone does a better job of resolving nearby fingers. Trying my new app out on my phone restored my sanity, because it worked much more as I expected. But the phone is a too small for me to debug on, so I’m looking for another tablet.

  2. Joe Lapp

    Turns out that Nexus 7 has better multi-touch than most tablets. I spent the day comparing the multi-touch responsiveness of the Nexus 7, Galaxy Tab 2 (7.0), Galaxy Note 10.1, Droid Xyboard 10.1, Droid RAZR, and Droid RAZR Maxx HD. The Droid RAZR phone had the absolute best. Second best was the Nexus 7 tablet. No two devices behaved identically under testing. Testing involved rapidly moving multiple fingers at once. Some devices would randomly lose and pickup fingers that hadn’t lifted. Some devices would only very intermittently report finger events. Some devices would bounce fingers short distances over multiple directions as the particular finger actually travelled a relatively straight line. Factors seemed to include finger speed, finger proximity, amount of work done during an event, and whether fingernails came into brief contact with the screen during a movement. I’ve got a lot of testing to do to pin down and manage the causes.

    So it looks like I do have to back your claim that the Nexus 7 may be one of the better ones out there. It looks like multi-touch technology is still immature.