All that’s gold doesn’t automatically have to glitter. Android was touted as being one of the next large platforms which would knock iPhone of its own throne. However, this does not appear to be the situation for Android. The best problem that the platform is currently facing is that the range of versions of applications on mobiles. Having a whole slew of releases available for the Android platform, many programs are not necessarily backward or forward compatible with the operating system. Add to this the emulators on android various vendors providing different mobiles with numerous variations of hardware components means that many developers have nightmares developing code for every individual phone as opposed to a universal app.
The issue inherently in this situation is that cross-platform freedom irrespective of hardware is an perfect utopia that developers want but can never get. Comparable to the BlackBerry scenario where porting apps from other platforms is a nightmare, it can happen but not without a substantial fight.
From a smaller developer standpoint, Android is a difficult platform to operate on. The quantity of resources and time needed to code for one application is significant for a small company; the need to re-code for various hardware and software versions isn’t conducive to creating a client base. Not merely do variations in hardware and applications affect the overall compatibility of this app, it reflects badly on the build quality of this app. As a result, clients are naturally wary of the platform when they experience poor app quality and interaction. Programmers are then compelled to write quick-and-dirty patches to solve problems, which is inherently dangerous and shoddy programming.
Google needs to tackle this matter carefully. There are a number of underpowered phones which are running Android version 1.5 to extremely high-end strong phones with the emulators gba android most recent edition of 2.0 available. The inability of versions to operate compatibility backwards or forward mean that apps on either version is only going to run on versions that are precisely the same as theirs.