>For developers it is easy to build an android app that supports android version 2.2 upwards with the compatibility packages.
No, it isn't. Seriously, tell my how compatibility packages address the lack of TextureView in pre-ICS, the lack of meaningful Camera API, the lack of OpenSLES, the outdated SQLite libs, the lack of way to get the native sampling rate, ... (I could literally go on for an hour like this).
Any nontrivial app needs load of work to properly support old versions. And then you can begin the real work: fixing vendor specific bugs.
> No, it isn't. Seriously, tell my how compatibility packages address the lack of TextureView in pre-ICS, the lack of meaningful Camera API, the lack of OpenSLES, the outdated SQLite libs, the lack of way to get the native sampling rate, ... (I could literally go on for an hour like this).
Things like TextureView, OpenSLES, and sampling rate are app specific and will be a challenge to deal with in general, regardless of platform level. Camera APIs are available in a good state going back to API 8 and 9, which are 2.x releases. Generally speaking, the majority of app developers will not have to deal with the APIs you are talking about, but yes they are flaws and your app may have to target higher API levels or have extra development if you want to support older devices for those things.
> Any nontrivial app needs load of work to properly support old versions. And then you can begin the real work: fixing vendor specific bugs.
Vendor specific bugs are always an issue even in the 4.x releases, this is something that cannot be avoided when developing for a platform with a lot of hardware variation.
No, it isn't. Seriously, tell my how compatibility packages address the lack of TextureView in pre-ICS, the lack of meaningful Camera API, the lack of OpenSLES, the outdated SQLite libs, the lack of way to get the native sampling rate, ... (I could literally go on for an hour like this).
Any nontrivial app needs load of work to properly support old versions. And then you can begin the real work: fixing vendor specific bugs.