I’ve been working on this project for my company and my boss said: “we want to target as many devices as possible so make it work for 1.6” which seriously tied my hands at some times.
What I’m wandering now is: is it worth supporting 1.6 in general?
With the release of 2.3 and the fact that most recent phones have been updated to 2.X, what place is left for 1.6 devices.
The current distribution of Android Versions should give you some idea what you should do. Perhaps show the graph to your boss?
From this link you can see that Androids below 2.1 are in a minority, about 17% are below 2.1.
Since 2.3 recently came out, and rumors about 3.0 have started to float + many device makers have posted upgrades from 1.6 do 2.1 or higher, I doubt there are many reasons left to develop for Androids below 2.x.
you should ask yourself what version-specific features you require from 2.1, 2.2, or 2.3. if the answer is “nothing”, or “i don’t know”, then start coding against 1.6. if you find you need a version >1.6, you have to analyze the trade off between supporting fewer devices and being able to code to the features of >1.6 platforms.
you can also add features and only expose them if the platform is running a certain API version. you do this by coding to say 2.2, but then inspecting the platform version and avoiding execution paths in your code that would access those 2.2 features if the platform is <2.2. you can get the runtime platform version with Build.VERSION.
Android 1.5 6.3%
Android 1.6 10.6%