Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

What hardware devices do you test your Android apps on?

Tags:

android

The emulator that comes with ADK for use under Eclipse is fine for testing basic Android application functionality, but:

  • it's not very performant
  • it doesn't reflect real-world hardware and software configurations
  • it doesn't support varying input devices such as d-pads, touch screens, trackballs or even Bluetooth/USB controllers.

Android Developer posts some very helpful rolling graphs of Platform versions, Screen sizes and densities, and OpenGL ES versions as extracted from Android Market:

  • http://developer.android.com/resources/dashboard/platform-versions.html
  • http://developer.android.com/resources/dashboard/screens.html
  • http://developer.android.com/resources/dashboard/opengl.html

Those really help to narrow the scope of some of the choices, but I find myself really wanting to know what the proportions of input methods various devices support are... is touch represented by 90% of the market, or only 5%? What proportion of those support multi-touch?

For example... anyone who has played the free and open source game Replica Island ( http://replicaisland.net/ ) will know that how you control the game varies between devices because it supports multiple input methods. I think Chris and Genki have done a fantastic job here, but if you use touch screens you know that the game is much more playable on 5-7 inch devices than it is on 10+ inch devices. This is because the left-right slide control doesn't maintain the same physical size as the screen size increases - meaning that you have to move too far on large touch screen devices (such as Honeycomb tablets) to be comfortable.

These are the sorts of issues you only find out when you start using various hardware devices to do your testing on. Or you can wait until users do your testing for you and start bringing your app ratings down.

So after my long introduction, here are my questions to you:

  1. What collection of hardware devices have you bought to use in your software development and have you found those choices to have been beneficial or detrimental?
  2. Do you instead use 3rd party testing services and just tolerate the long turnaround times between test reports (hours/days instead of instant gratification)?
like image 725
AlwaysLearning Avatar asked Sep 02 '11 02:09

AlwaysLearning


People also ask

How do I do a Hardware test on my Android?

Open the app and tap Device diagnosis. Choose Troubleshoot to test the touch-screen display, battery, audio, camera, connectivity, and more. Select Hardware test to run diagnostics on the display, backlight, touch screen, multi-touch capability, flash, front and rear camera, and the proximity sensor.

How are Android apps tested?

Test apps on Android Part of Android Jetpack. By running tests against your app consistently, you can verify your app's correctness, functional behavior, and usability before you release it publicly. Testing also offers the following advantages: Rapid feedback on failures.

What Hardware does Android run on?

Hardware. The main hardware platform for Android is ARM (the ARMv7 and ARMv8-A architectures), with x86 and x86-64 architectures also officially supported in later versions of Android.


1 Answers

For me test devices are sort of like pickup trucks: I'll make friends just to get access to their phones ;-)

Seriously, I do tap friends and family as resources. I'm a small shop and can't afford to buy a lot of test devices. Yet even with this limited pool of resources I've go the following devices available and it seems to have served me well:

  1. Original Moto DROID (seems like such a dog now).
  2. DROID Pro (broken screen but still good for testing).
  3. Asus eTransformer
  4. Samsung Galaxy Tab (7")
  5. HTC Rezound (my personal phone--it rocks)
  6. Samsung Charge (my wife's phone)
  7. DROID X (son-in-law)
  8. HTC-something I can't remember right now (daughter & son)
  9. Amazon Kindle Fire (father).

So, as you can see, without spending a fortune I've got a pretty good set of test devices, not counting all the friends I press into service as beta-testers. With all those I really haven't had many problems with platform specific issues. I hear a lot of grumbling about fragmentation (perhaps mostly from iOS developers), but if you develop your app intelligently it isn't a huge issue.

like image 135
HolyHog Avatar answered Oct 06 '22 19:10

HolyHog