I'm doing a bit of iPhone / Android development at the moment and I was curious, if I were to build an application that targets Android 2.2 and release it on the Android Marketplace, would it be playable by users who are using older versions of the OS, such as 1.6? What would happen if such a user were to attempt to run the app? Would they be prompted to update their OS or just receive an error message?
Thanks guys.
It depends what you have in the minSdkVersion
field in your AndroidManifest.xml
. If it is set to 4 or lower, then it will be visible to people using 1.6.
There's a good explanation here.
The android SDK is completely backward compatible using the mechanism that @Graham mentions. The other question will be "how far should you go". Use this graph to see the population of users on each platform level.
http://developer.android.com/resources/dashboard/platform-versions.html
This is pure opinion, but I would advise starting your app at API levels 7 or 8. The benefits of the APIs in EClair+ are worth losing this 0.4% still on 1.x devices.
If you are targeting 2.2, users with earlier SDK will not be able to download it.
They will see: This app is Incompatible with your device XXXXXXX