Android Development Concerns

July 27th, 2012 Leave a comment
Like the article?
Android Development Concerns

As the market share for Android devices has grown, developers have found that there are things about Android development that can cause problems. Android developers all learn that there are challenges and concerns when creating applications for the Android platform. Part of creating excellent apps is being able to anticipate these issues and plan to get around these headaches. This article will give you an overview of some of these problems and how to overcome them.

Software/Hardware Integration

Button configurations change from handset to handset. The same button can perform a completely different function on another handset, which can pose a design problem when ensuring that your application will work correctly on all devices. In order to prevent user frustration you will need to understand which devices your users prefer and how you can use the touchscreen and keyboard features so that your app will work correctly for the majority of your users.

Using focus groups, surveys, crowdsourcing and social media are good ways you can learn from your customer how to improve your product. You will also need to do extensive testing on different Android devices so you understand how your user is experiencing your app.

Hardware Fragmentation

Since there are almost 200 different Android devices that have different features, keyboards, cameras, buttons, screens and form factors; it isn’t hard to see that your users could all be having very different user experiences with your application. The key to pleasing your users is to first find out what handsets are popular with your customers and target those first. Then you can expand to other handsets from there.

Software Fragmentation

Just like the hardware concerns above, there are many different versions of the Android operating system in circulation. You cannot simply focus on the most recent version of the OS because not everyone will upgrade promptly or, depending on their device, will be able to upgrade at all. Some of the problem here is the carrier since there is little incentive for carriers to upgrade devices, so it will often go undone.

To overcome this you will need to write your application for the most widely adopted version that your customers use. This goes along with knowing which devices are the most popular with your users. Get to know the carriers’ upgrade schedule so you will be prepared to update your app accordingly. Worst case, you may need to stay away from features that would make your application unusable by older versions of the OS.

Security Issues

Currently, there are many applications that impersonate as trusted apps. The openness of the Android platform is working against it, in that it is open to malicious attacks. Due to the multiple versions of the OS and poor upgrade schedule it can be difficult to get vulnerabilities patched. You will need to consistently monitor your applications for security issues and keep up with any vulnerability that may be found so you can ensure your app is not opening your users up to malicious attacks. Make sure that you understand the scope of any problems and how they may affect your application.


As you can see, many of these solutions require a commitment to market research, which can come at a cost. Understanding your user’s needs and requirements is the first step in getting your Android app right. This can require research into the devices your customers are using, features that are important to them and how your customers use their phones. All of this takes time and can be an expensive investment in your development process. However, if you are committed to developing an awesome Android application, the best thing you can do is your preliminary homework to ensure a home run.

Help us spread the word!
  • Twitter
  • Facebook
  • LinkedIn
  • Pinterest
  • Delicious
  • DZone
  • Reddit
  • Sphinn
  • StumbleUpon
  • Google Plus
  • RSS
  • Email
  • Print
Don't miss another post! Receive updates via email!