В чем разница между «min sdk, target sdk и compile with»? В андроиде

В чем разница между «min sdk, target sdk и compile with» в android?

В чем разница между «минимальным sdk, целевым sdk и компиляцией с», которые появляются, когда я пытаюсь создать новый проект приложения для Android! как это ..

Minimun SDK: API 14 Target SDK: API 17 Скомпилируйте с помощью API 14

И мой выбор хороший? Или какие из них я должен выбрать? Извините, я попытался поставить фотографию, но я не могу ..

«Ожидание ваших ответов» plzzz = D!

Просто,

Minimun SDK: API 14

Что ваше приложение будет работать только на мобильном телефоне с уровнем api 14, то есть (ICS 4.0) или выше. Ваше приложение не сможет работать в предыдущих версиях Android, таких как пряники и фрио.

Целевой SDK: API 17

Относится к версии андроида, для которого вы хотите построить, что является Jellybean на вашем деле. Рекомендуется максимально обновлять, насколько это возможно (api 20 Kitkat в настоящем контексте).

Скомпилировать с помощью API 14

Относится к версии andriod, которую вы тестируете. Уступка api 14 означает, что вы собираетесь протестировать свое приложение на ICS.

Вы также можете посмотреть это видео:

https://www.youtube.com/watch?v=Sxo5zMcOCXM >

андроид: minSdkVersion

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

андроид: targetSdkVersion

Целое число, обозначающее уровень API, на который нацелено приложение. Если значение не задано, значение по умолчанию равно значению minSdkVersion. Этот атрибут информирует систему о том, что вы протестировали ее с целевой версией, и система не должна включать поведение совместимости для поддержания передовой совместимости вашего приложения с целевой версией. Приложение все еще может работать в более старых версиях (вплоть до minSdkVersion).

Поскольку Android развивается с каждой новой версией, некоторые изменения поведения и даже появление могут измениться. Однако, если уровень API на платформе выше, чем версия, объявленная целевымSDKVersion вашего приложения, система может включить поведение совместимости, чтобы ваше приложение продолжало работать так, как вы ожидаете. Вы можете отключить такое поведение совместимости, указав targetSdkVersion в соответствии с уровнем API на платформе, на которой он запущен. Например, при установке этого значения на «11» или выше система может применять новую тему по умолчанию (Holo) к вашему приложению при работе на Android 3.0 или выше, а также отключает режим совместимости с экраном при работе на больших экранах (поскольку поддержка API Уровень 11 неявно поддерживает более крупные экраны).

Существует много способов совместимости, которые система может включить на основе значения, установленного для этого атрибута. Некоторые из этих типов поведения описываются соответствующими версиями платформы в ссылке Build.VERSION_CODES.

Чтобы поддерживать приложение вместе с каждой версией Android, вы должны увеличить значение этого атрибута в соответствии с последним уровнем API, а затем тщательно протестировать свое приложение на соответствующей версии платформы. Представлен в: API Level 4

андроид: maxSdkVersion

Целое число, обозначающее максимальный уровень API, на котором приложение предназначено для запуска. В Android 1.5, 1.6, 2.0 и 2.0.1 система проверяет значение этого атрибута при установке приложения и повторной проверки приложения после обновления системы. В любом случае, если атрибут maxSdkVersion приложения ниже уровня API, используемого самой системой, система не сможет установить приложение. В случае повторной проверки после обновления системы это эффективно удаляет ваше приложение с устройства.

Пожалуйста, перейдите по этой ссылке для получения более подробной информации

http://developer.android.com/guide/topics/manifest/uses-sdk-element.html

Попытка максимально упростить его, я могу объяснить три условия следующим образом:

Min Required SDK: показывает устройство с минимальной версией Android, которую вы хотите, чтобы ваше приложение поддерживало. Например, если вы выберете API 11: Honey Comb в раскрывающемся списке. Это покажет, что ваше приложение не будет поддерживать / не будет работать на любом устройстве Android, имеющем версию для Android ниже, чем Honey Comb.

Target SDK: это всегда должно быть как можно более высоким, так как оно указывает максимальную версию Android, с которой вы нацеливали или тестировали свое приложение. Итак, если вы сохраните свой minReqSDK >> 11 (honey comb) и targetSDK >> 21 (Lollipop), это покажет, что ваше приложение будет работать на всех версиях Android от сотовых до Lollipop без проблем совместимости, поскольку вы установили целевой SDK> > 21 версия Lollipop.

Compile With: Это не имеет никакого отношения к андроиду, поддерживающему любые устройства. Вы можете выбрать любую версию Android, которую вы установили, используя диспетчер SDK для компиляции и запуска приложения для целей разработки.

В вашем случае: min sdk version: 14 target sdk: 17 compile with: 14

Ваше устройство будет поддерживать все версии Android с уровнем 14 (сэндвич с мороженым) до уровня api 17 (Jelly Bean 4.2). И вы используете api level 14 (ICS) для компиляции и запуска приложения для разработки.

Надеюсь это поможет.

Короче говоря, вот цель объявления другого targetSDK из minSDK: это означает, что вы используете функции с SDK более высокого уровня, чем ваш минимум, но вы обеспечили обратную совместимость . Другими словами, представьте, что вы хотите использовать функцию, которая была только недавно введена, но это не критично для вашего приложения. Затем вы установили бы targetSDK в версию, где была введена эта новая функция, а минимальная – на что-то ниже, чтобы все могли использовать ваше приложение.

Например, скажем, вы пишете приложение, которое широко использует обнаружение жестов. Тем не менее, каждая команда, которая может быть распознана жестом, также может быть выполнена с помощью кнопки или из меню. В этом случае жесты являются «отличными», но не требуются. Поэтому вы должны установить целевой sdk в 7 («Eclair», когда была введена библиотека GestureDetection), а минимальная SDK до уровня 3 («Cupcake»), чтобы даже люди с действительно старыми телефонами могли использовать ваше приложение. Все, что вам нужно сделать, это убедиться, что ваше приложение проверило версию Android, на которой она работала, прежде чем пытаться использовать библиотеку жестов, чтобы не пытаться использовать ее, если она не существует. (По общему признанию, это датированный пример, поскольку вряд ли у кого по-прежнему есть телефон v1.5, но было время, когда поддержание совместимости с v1.5 было действительно важно.)

Чтобы привести еще один пример, вы можете использовать это, если хотите использовать функцию из Gingerbread или Honeycomb. Некоторые люди скоро получат обновления, но многие другие, особенно со старыми аппаратными средствами, могут остаться в комплекте с Eclair, пока не приобретут новое устройство. Это позволит вам использовать некоторые из новых интересных функций, но не исключая часть вашего возможного рынка.

В блоге разработчика Android есть действительно хорошая статья о том, как использовать эту функцию, и, в частности, как разработать код «проверить, существует ли функция перед его использованием», упомянутый выше.

Для OP: я написал это в основном в интересах любого, кто случайно наткнется на этот вопрос в будущем, поскольку я понимаю, что ваш вопрос был задан давно. Вот сообщение

Android: minSdkVersion Целое число, определяющее минимальный уровень API, необходимый для запуска приложения. Система Android не позволит пользователю установить приложение, если уровень API системы ниже, чем значение, указанное в этом атрибуте. Вы всегда должны объявлять этот атрибут. Внимание: если вы не объявляете этот атрибут, система принимает значение по умолчанию «1», что означает, что ваше приложение совместимо со всеми версиями Android. Если ваше приложение несовместимо со всеми версиями (например, оно использует API-интерфейсы, введенные в API-уровень 3), и вы не объявили надлежащую minSdkVersion, а затем, когда они установлены в системе с уровнем API менее 3, приложение будет аварийно завершено во время Во время попытки доступа к недоступным API. По этой причине обязательно объявите соответствующий уровень API в атрибуте minSdkVersion.

Android: targetSdkVersion Целое число, обозначающее уровень API, на который нацелено приложение. Если значение не задано, значение по умолчанию равно значению minSdkVersion. Этот атрибут информирует систему о том, что вы протестировали ее с целевой версией, и система не должна включать поведение совместимости для поддержания передовой совместимости вашего приложения с целевой версией. Приложение все еще может работать в более старых версиях (вплоть до minSdkVersion).

Поскольку Android развивается с каждой новой версией, некоторые изменения поведения и даже появление могут измениться. Однако, если уровень API на платформе выше, чем версия, объявленная целевымSDKVersion вашего приложения, система может включить поведение совместимости, чтобы ваше приложение продолжало работать так, как вы ожидаете. Вы можете отключить такое поведение совместимости, указав targetSdkVersion в соответствии с уровнем API на платформе, на которой он запущен. Например, при установке этого значения на «11» или выше система может применять новую тему по умолчанию (Holo) к вашему приложению при работе на Android 3.0 или выше, а также отключает режим совместимости с экраном при работе на больших экранах (поскольку поддержка API Уровень 11 неявно поддерживает более крупные экраны).

Существует много способов совместимости, которые система может включить на основе значения, установленного для этого атрибута. Некоторые из этих типов поведения описываются соответствующими версиями платформы в ссылке Build.VERSION_CODES.

Чтобы поддерживать приложение вместе с каждой версией Android, вы должны увеличить значение этого атрибута в соответствии с последним уровнем API, а затем тщательно протестировать свое приложение на соответствующей версии платформы.

Представлен в: API Level 4

Android: maxSdkVersion Целое число, определяющее максимальный уровень API, на котором приложение предназначено для запуска. В Android 1.5, 1.6, 2.0 и 2.0.1 система проверяет значение этого атрибута при установке приложения и повторной проверки приложения после обновления системы. В любом случае, если атрибут maxSdkVersion приложения ниже уровня API, используемого самой системой, система не сможет установить приложение. В случае повторной проверки после обновления системы это эффективно удаляет ваше приложение с устройства.

Чтобы проиллюстрировать, как этот атрибут может повлиять на ваше приложение после обновления системы, рассмотрите следующий пример:

Приложение, объявляющее maxSdkVersion = "5" в своем манифесте, публикуется в Google Play. Пользователь, чье устройство работает под управлением Android 1.6 (API Level 4), загружает и устанавливает приложение. Через несколько недель пользователь получит обновление системы на Android 2.0 (API Level 5). После установки обновления система проверяет maxSdkVersion приложения и успешно повторно проверяет его. Приложение функционирует как обычно. Однако через некоторое время устройство получит еще одно обновление системы, на этот раз до Android 2.0.1 (API Level 6). После обновления система больше не может повторно проверять приложение, потому что собственный уровень API (6) системы теперь выше максимального, поддерживаемого приложением (5). Система предотвращает видимость приложения для пользователя, фактически удаляя его с устройства.

Предупреждение. Объявление этого атрибута не рекомендуется. Во-первых, нет необходимости устанавливать атрибут как средство блокировки развертывания вашего приложения на новые версии платформы Android по мере их выпуска. По дизайну новые версии платформы полностью совместимы с обратной связью. Ваше приложение должно работать должным образом в новых версиях, при условии, что оно использует только стандартные API-интерфейсы и следует лучшим методам разработки. Во-вторых, обратите внимание, что в некоторых случаях объявление атрибута может привести к удалению вашего приложения с устройств пользователей после обновления системы до более высокого уровня API. Большинство устройств, на которых может быть установлено ваше приложение, будут получать периодические системные обновления по воздуху, поэтому перед установкой этого атрибута следует учитывать их влияние на ваше приложение.

Представлен в: API Level 4

Будущие версии Android (помимо Android 2.0.1) больше не будут проверять или применять атрибут maxSdkVersion во время установки или повторной проверки. Google Play будет продолжать использовать этот атрибут в качестве фильтра, однако при представлении пользователям приложений, доступных для загрузки.

Подробнее об этом читайте здесь: используйте sdk

Intereting Posts
Отображение имени контакта с начальной буквой в круге Выключение мягкой клавиатуры Как избежать «Не начата деятельность, ее текущая задача была перенесена на передний план»? Установка EditText на одну строку позволяет потерять фокус после нажатия кнопки enter Установить ширину в текстовое окно не работает Тестирование okHttp-запросов с помощью Robolectric – обратные вызовы GeoTagging Photo после использования камеры Пользовательский диалог Android Как передать идентификатор электронной почты, который будет синхронизирован, чтобы создать календарь событий в android? Проверьте, является ли textview эллипсисом в android Как я могу получить свои обзоры и информацию о приложении для Android в своем сайте из Google Play HttpClient на Android: исключение NoHttpResponseException через UMTS / 3G В libgdx на Android, как мне сохранить состояние игры в случае, если приложение убито? Как прокрутить HorizontalScrollView при нажатии кнопки в android? Чтение уведомлений при нажатии кнопки в устройстве BLE