Android应用程序版本 – 最低版本SDK

我查看了http://developer.android.com/resources/dashboard/platform-versions.html

在此处输入图像描述

2.1 : 27.2% 2.2 : 63.9% 2.3 : 0.8% 2.3.3 : 1.7% 3.0 : 0.2% 

我很确定我将使用Android 2.1作为我的版本,覆盖了近94%的当前用户。 当我在eclipse中设置一个Android应用程序时,我看到了这个屏幕

新的android项目

文件说

最低SDK版本

此值指定应用程序所需的最低API级别。

那是什么意思? 这是否意味着我可以为我的构建目标选择2.3,但是选择7作为min sdk版本并且支持所有运行2.1的设备?

    我find了类似的post( Android Min SDK Version vs. Target SDK Version )。 这是答案的一部分:

     android:minSdkVersion 

    一个整数,指定应用程序运行所需的最低API级别。 如果系统的API级别低于此属性中指定的值,则Android系统将阻止用户安装应用程序。 您应该始终声明此属性。

     android:targetSdkVersion 

    一个整数,指定应用程序所针对的API级别。

    你是对的。 该应用程序根本不会安装在API级别较低的设备上。 并且在Android电子市场中不会显示此类设备。

    以下列出了所有API级别: http : //developer.android.com/guide/appendix/api-levels.html

    据我了解,“Min SDK Version”控制您的用户是否收到“此应用程序不受支持”消息框。 例如,如果他们运行1.6(API 4)并且您在该框中插入了7 ….他们将收到消息,无论您是否已经选中了1.6框。

    我从来没有完全理解为什么它可以被任意设定。 我认为它的设置允许开发人员针对多个目标和function进行构建,而不必仅与一个SDK版本兼容。

    min-sdk = 7(Android 2.1)表示您的应用无法安装在API级别为6(Android 2.0.1)或低于(1.5或1.6)的设备中。 当然,您可以在API级别为7或更高级别(> 2.1)的设备中安装您的应用程序。