Android Device Testing

Several of my developer friends have contacted me over the past few months to ask me about which devices we test TouchDraw for Android on given that there are lots of little layout differences depending on the device you're on.  Now that it is available for non-Samsung devices (and now available globally via the Google Play store), I thought it's finally time to publicly document which devices we test and develop with.

Early on, we decided that we needed the UI to be adaptive based on the screen size, pixel density and orientation of the device so that we could try to maximize the area dedicated to the drawing canvas and deliver an app that could work well on devices with a 4" screen or bigger.  The unfortunate side effect of that decision was that we kept needing more devices as we created layouts targeting the different configuration.  While we could have used the emulator, we we felt that we couldn't get a feel for the size of the tap targets and the general usability without real physical devices.

Here's a table the outlines the final tally of devices that test, target and develop with:

LDPI MDPI HDPI XHDPI
small
normal Samsung Galaxy S2 Samsung Galaxy S3
Google Nexus 4
large Samsung Galaxy Tab 2 7.0 Google Nexus 7 (TVDPI) Samsung Galaxy Note
Samsung Galaxy Note 2
xlarge Motorola Xoom
Samsung Galaxy Note 2 10.1
Asus Transformer Infinity Google Nexus 10

As you can see, we don't support or target devices with LDPI and/or small screens; however given TouchDraws' target mareket I don't think we're excluding many potential customers. You'll also notice that we consider the Nexus 7 (even though it's an TVDPI device) to be our Large/HDPI test device, since there don't seem to be too many of these devices in the (mainstream) wild.

It may seem a bit excessive to try to target so many combinations individually; however by doing so, we were able to build the app in a way that it is (and can easily be) optimized for the device you're using it on instead of a "one size fit" all compromised UI.

The surprise for most people is that of all of the devices above, the one that we target and test on first is the Galaxy Tab 2 7.0.  We've found that because of it's resolution (1024x600) and low screen density that if we can come up with a UI paradigm that works on it, we can usually scale it up to the other devices.  Also, being the lowest powered device, it's the best way to get immediate feedback on potential performance implications of new drawing features.  With that said, the more we test with the Nexus 7, the more we find that it's the worst performer of all devices and is slowly becoming our device for performance tuning.

In addition the screen issues, I also should mention that at least for us it was important to have actual devices with different hardware accessories as well.  Specifically, we wanted test devices with styluses (which the Galaxy Note devices provide) and hardware keyboards (which the keyboard dock of the Transformer Infinity provides).

Realistically, I don't think we could have developed TouchDraw (at least with the level of polish that it has) without this many device variations to test with. 

As our stable of test devices grows and/or changes ove time I'll try to make an effort to update this for future reference, though once I finally have time to play with the Xamarin Test Cloud, we may not need many more devices.