Версия приложения для Android – версия Min 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% текущих пользователей. Когда я иду, чтобы настроить приложение для Android в eclipse, я вижу этот экран

Новый проект для Android

В документации говорится:

Версия Min SDK

Это значение указывает минимальный уровень API, необходимый вашему приложению.

Что это значит? Означает ли это, что я могу выбрать 2,3 для моей цели сборки, но выберите 7 в качестве версии min sdk и поддерживайте ли все поддерживаемые устройства 2.1?

Я нашел аналогичную запись ( Android Min SDK Version vs. Target SDK Version ). Вот часть ответа:

 android:minSdkVersion 

Целое число, обозначающее минимальный уровень API, необходимый для запуска приложения. Система Android не позволит пользователю установить приложение, если уровень API системы ниже, чем значение, указанное в этом атрибуте. Вы всегда должны объявлять этот атрибут.

 android:targetSdkVersion 

Целое число, обозначающее уровень API, на который нацелено приложение.

Вы правы. Приложение просто не будет установлено на устройствах с более низким уровнем API. И не будет видно в Android Market для таких устройств.

Здесь перечислены все уровни API: http://developer.android.com/guide/appendix/api-levels.html

Насколько я понимаю, «Min SDK Version» контролирует, получают ли ваши пользователи сообщение «Это приложение не поддерживается». Например, если они запускали 1.6 (API 4), и вы вставили 7 в это поле … они получат сообщение независимо от того, установлен ли флажок 1.6.

Я никогда не понимал, почему кажется, что это может быть произвольно задано. Я думаю, что он настроен таким образом, чтобы разработчик мог создавать против нескольких целей и функций, не будучи вынужденными иметь совместимость только с одной версией SDK.

Min-sdk = 7 (Android 2.1) означает, что ваше приложение не может быть установлено на устройстве с уровнем API 6 (android 2.0.1) или ниже (1.5 или 1.6). Конечно, вы можете установить приложение на устройство с уровнем API 7 или выше (> 2.1).