I want to change the minimum SDK version in Android Studio from API 12 to API 14. I have tried changing it in the manifest file, i.e.,
<uses-sdk
android:minSdkVersion="14"
android:targetSdkVersion="18" />
and rebuilding the project, but I still get the Android Studio IDE throwing up some errors. I presume I have to set the min SDK in ‘project properties’ or something similar so the IDE recognizes the change, but I can’t find where this is done in Android Studio.
Laurel
5,90314 gold badges30 silver badges56 bronze badges
asked Oct 19, 2013 at 10:31
8
When you want to update your minSdkVersion in an existing Android project…
- Update
build.gradle (Module: YourProject)
under Gradle Script and
make sure that it is NOTbuild.gradle (Project: YourProject.app)
.
An example of build.gradle:
apply plugin: 'com.android.application'
android {
compileSdkVersion 28
buildToolsVersion "28.0.2"
defaultConfig {
applicationId "com.stackoverflow.answer"
minSdkVersion 21
targetSdkVersion 28
versionCode 1
versionName "1.0"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
dependencies {
androidTestCompile 'junit:junit:4.12'
compile fileTree(dir: 'libs', include: ['*.jar'])
}
- Sync gradle button (refresh all gradle projects also works).
or
- Rebuild project
After updating the build.gradle‘s minSdkVersion
, you have to click on the button to sync gradle file («Sync Project with Gradle files»). That will clear the marker.
Updating manifest.xml, for e.g. deleting any references to SDK levels in the manifest file, is NOT necessary anymore in Android Studio.
Terry
9858 silver badges29 bronze badges
answered Nov 23, 2013 at 21:08
SottiSotti
13.9k2 gold badges50 silver badges43 bronze badges
12
Update 2022
For Android Studio users:
-
Right click the App directory and
Choose the «Open Module Settings» (F4) option
-
Change the «Min SDK Version» in the Default Config tab
NOTE:
You might also want to change;
the «Target SDK Version» in the Default Config tab and
the «Compile SDK Version» in the Properties tab
-
Click Apply, then OK, and Gradle should automatically be synced
For users of older Android Studio versions:
- Right click the App directory and
Choose the «Module Setting» (F4) option - Change the ADK Platform to what you need
- Click OK and Gradle should automatically be synced
Ola Ström
3,5644 gold badges20 silver badges40 bronze badges
answered Feb 10, 2014 at 0:29
user3291001user3291001
1,9191 gold badge11 silver badges3 bronze badges
4
As now Android Studio is stable, there is an easy way to do it.
- Right click on your project file
- Select «Open Module Settings»
- Go to the «Flavors» tab.
- Select the Min SDK Version from the drop down list
PS: Though this question was already answered but Android Studio has changed a little bit by its stable release. So an easy straight forward way will help any new answer seeker landing here.
Isuru
30.1k59 gold badges187 silver badges295 bronze badges
answered Dec 23, 2014 at 19:20
priyankvexpriyankvex
5,6805 gold badges27 silver badges43 bronze badges
5
In android studio you can easily press:
- Ctrl + Shift + Alt + S.
- If you have a newer version of
android studio
, then press on app first.
Then, continue with step three as follows. - A window will open with a bunch of options
- Go to Flavors and that’s actually all you need
You can also change the versionCode
of your app there.
Daniel
451 silver badge9 bronze badges
answered May 13, 2015 at 19:48
Salah KleinSalah Klein
3703 silver badges12 bronze badges
In build.gradle
change minSdkVersion 13
to minSdkVersion 8
Thats all you need to do. I solved my problem by only doing this.
defaultConfig {
applicationId "com.example.sabrim.sbrtest"
minSdkVersion 8
targetSdkVersion 20
versionCode 1
versionName "1.0"
}
answered Jul 5, 2014 at 13:57
Sabri MevişSabri Meviş
2,1011 gold badge30 silver badges34 bronze badges
According to this answer, you just don’t include minsdkversion in the manifest.xml, and the build system will use the values from the build.gradle file and put the information into the final apk.
Because the build system needs this information anyway, this makes sense. You should not need to define this values two times.
You just have to sync the project after changing the build.gradle
file, but Android Studio 0.5.2 display a yellow status bar on top of the build.gradle editor window to help you
Also note there at least two build.gradle
files: one master and one for the app/module. The one to change is in the app/module, it already includes a property minSdkVersion
in a newly generated project.
answered Apr 15, 2014 at 9:10
MeierMeier
3,8381 gold badge17 silver badges46 bronze badges
For the latest Android Studio v2.3.3 (October 11th, 2017) :
1. Click View
on menu bar
2. Click Open Module Settings
3. Open Flavors
tab
4. Choose Min Sdk
version you need
6. Click OK
AnneTheAgile
9,7566 gold badges50 silver badges48 bronze badges
answered Oct 10, 2017 at 21:32
RidoRido
7174 gold badges10 silver badges22 bronze badges
If you’re having troubles specifying the SDK target to Google APIs instead of the base Platform SDK just change the compileSdkVersion 19
to compileSdkVersion "Google Inc.:Google APIs:19"
answered May 7, 2014 at 18:16
Juan ReyesJuan Reyes
4045 silver badges9 bronze badges
As well as updating the manifest, update the module’s build.gradle
file too (it’s listed in the project pane just below the manifest — if there’s no minSdkVersion
key in it, you’re looking at the wrong one, as there’s a couple). A rebuild and things should be fine…
answered Nov 10, 2013 at 11:44
Chris RollistonChris Rolliston
4,7781 gold badge15 silver badges20 bronze badges
0
In Android studio open build.gradle and edit the following section:
defaultConfig {
applicationId "com.demo.myanswer"
minSdkVersion 14
targetSdkVersion 23
versionCode 1
versionName "1.0"
}
here you can change minSdkVersion from 12 to 14
nstCactus
5,0032 gold badges30 silver badges41 bronze badges
answered May 20, 2016 at 7:35
File>Project Structure>Modules
you can change it from there
answered Feb 7, 2020 at 18:31
Wisam AtilWisam Atil
811 silver badge9 bronze badges
When you want to change minimum SDK you should take care of minSdkVersion
[About] in module build.garadle
android {
defaultConfig {
minSdkVersion 21
}
}
answered May 30, 2021 at 14:02
yoAlex5yoAlex5
26.5k8 gold badges180 silver badges191 bronze badges
Changing the minSdkVersion in the manifest is not necessary. If you change it in the gradle build file, as seen below, you accomplish what you need to do.
defaultConfig {
applicationId "com.demo.myanswer"
minSdkVersion 14
targetSdkVersion 23
versionCode 1
versionName "1.0"
}
answered Jul 1, 2016 at 15:10
Chris DeckChris Deck
1462 silver badges9 bronze badges
To change the minimum SDK version in Android Studio just…
1). Right click on «app» in the «Project» panel
2). Choose the new «Min SDK Version» on the «Default Config» tab
3). Click on «OK» and the project will now resync with the new Gradle settings.
answered Sep 7, 2022 at 18:41
SnostorpSnostorp
4687 silver badges12 bronze badges
For me what worked was: (right click)project->android tools->clear lint markers. Although for some reason the Manifest reverted to the old (lower) minimum API level, but after I changed it back to the new (higher) API level there was no red error underline and the project now uses the new minimum API level.
Edit: Sorry, I see you were using Android Studio, not Eclipse. But I guess there is a similar ‘clear lint markers’ in Studio somewhere and it might solve the problem.
answered Oct 27, 2013 at 9:27
Gradle Scripts ->
build.gradle (Module: app) ->
minSdkVersion (Your min sdk version)
answered Jul 12, 2016 at 11:27
Уровень API — это целочисленное значение, однозначно идентифицирующее версию API фреймворка, предлагаемую версией платформы Android. Платформа Android предоставляет интерфейс API, который приложения могут использовать для взаимодействия с базовой системой Android. API фреймворка состоит из:
- Основной набор пакетов и классов
- Набор элементов и атрибутов XML для объявления файла манифеста
- Набор XML-элементов и атрибутов для объявления и доступа к ресурсам
- Набор Интентов
- Набор разрешений, которые могут запрашивать приложения, а также принудительное применение разрешений, включенных в систему
Использование уровня API в Android
Идентификатор уровня API играет ключевую роль в обеспечении наилучшего опыта для пользователей и разработчиков приложений:
- Это позволяет платформе Android описать максимальную версию API, которую она поддерживает
- Это позволяет приложениям описывать версию API фреймворка, которая им требуется
- Это позволяет системе согласовывать установку приложений на устройство пользователя, так что несовместимые по версии приложения не устанавливаются.
Каждая версия платформы Android хранит свой идентификатор уровня API внутри самой системы Android.
Что такое SdkVersion?
Приложения могут использовать элемент манифеста, предоставляемый API фреймворка — для описания минимального и максимального уровней API, на которых они могут работать, а также предпочтительного уровня API, который они предназначены для поддержки. Элемент предлагает три ключевых атрибута:
- минсдкверсион — Указывает минимальный уровень API, на котором приложение может работать. Значение по умолчанию — «1».
- targetSdkVersion — Определяет уровень API, на котором приложение предназначено для работы. В некоторых случаях это позволяет приложению использовать элементы манифеста или поведения, определенные на целевом уровне API, а не ограничиваться использованием только тех, которые определены для минимального уровня API.
- макссдкверсион — Указывает максимальный уровень API, на котором приложение может работать
Когда пользователь пытается установить приложение или повторно проверяет приложение после обновления системы, система Android сначала проверяет атрибуты в манифесте приложения и сравнивает значения со своим собственным внутренним уровнем API. Система позволяет начать установку только при соблюдении следующих условий:
- Если андроид: minSdkVersion объявлен атрибут, его значение должно быть меньше или равно целому числу системного уровня API. Если не объявлено, система предполагает, что приложению требуется уровень API 1.
- Если андроид: maxSdkVersion объявлен атрибут, его значение должно быть больше или равно целому числу системного уровня API. Если не объявлено, система предполагает, что приложение не имеет максимального уровня API.
Как изменить приложение для Android SdkVersion
Вы можете использовать Android Studio для изменения уровня API приложения Android (версия SDK) с помощью этих двух методов.
- Выберите «Проект» в представлении проекта.
- В папке приложения выберите «build.gradle‘ файл
- Теперь вы можете редактировать минсдкверсион и targetSdkVersion отображается на правой панели
- После этого нажмите «Синхронизировать» в правом верхнем углу окна «наращивание Gradle‘ файл
б. В диалоге структуры проекта
- В верхнем меню выберите Файл> Проект Структура
- В диалоговом окне «Структура проекта» выберите «приложение» в списке модулей.
- Выберите вкладку «Ароматизаторы» на правой панели.
- Выберите желаемый минсдкверсион и targetSdkVersion
- Нажмите «ОК», чтобы сохранить выбор.
- В верхнем меню нажмите Сборка> Перестроить проект, чтобы восстановить проект Android
- Компания build.gradle файл будет изменен автоматически
Basically, API level means the Android version. This defines for which version you are targeting your application and what is going to be the minimum level of android version in your application will run. For setting Minimum level and Maximum level android studio provides two terminologies.
minSdkVersion means minimum Android OS version that will support your app and targetSdkVersion means the version for which you are actually developing your application. Your app will be compatible with all the version of android which are falling between minimum level SDK and target SDK.
How to change API SDK level in Android Studio
For changing the API level in android we have two different Approaches, let’s check both one by one:
Approach 1 To Change SDK API Level in Android Studio:
Step 1: Open your Android Studio, and go to Menu. File >Project Structure.
Step 2: In project Structure window, select app module in the list given on left side.
Step 3: Select the Flavors tab and under this you will have an option for setting “Min Sdk Version” and for setting “Target Sdk Version”.
You can check the name of version too in the drop down list while selecting the API level that makes the selection more clearer for anyone. Because sometimes remembering numbers is bit messy.
Step 4: Select both the versions and Click OK.
Approach 2 To Change API (Android Version) in Android Studio:
That will be pretty straight forward, but you need to stay very alert while making changes here.
Step 1: if you are project is opened in android option then select open Gradle Scripts > build.gradle(Module: app)
if you are in project View then click on your project folder > app > build.gradle
Step 2: Here you have to change minimum and Maximum sdk level as per your requirement. check the below given code:
defaultConfig { applicationId "com.AbhiAndroid.Android.myProject" minSdkVersion 14 targetSdkVersion 23 versionCode 1 versionName "1.0" }
Step 3: Click on Sync Now and You are ready to go.
Note: If you are choosing the First Approach then you need not to make changes in Gradle. It will automatically update the gradle.
13 ответов
Если вы хотите обновить minSdkVersion в существующем проекте…
- Обновить
build.gradle(Module: app)
. Убедитесь, что он находится под Gradle Script, и он НЕbuild.gradle(Project: yourproject)
.
Пример build.gradle:
apply plugin: 'com.android.application'
android {
compileSdkVersion 26
buildToolsVersion "25.0.3"
defaultConfig {
applicationId "com.stackoverflow.answer"
minSdkVersion 21
targetSdkVersion 26
versionCode 1
versionName "1.0"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
dependencies {
androidTestCompile 'junit:junit:4.12'
compile fileTree(dir: 'libs', include: ['*.jar'])
}
- Кнопка синхронизации gradle (обновлены все проекты gradle)
- Реконструкция проекта
После обновления build.gradle minSdkVersion
вам нужно щелкнуть по кнопке, чтобы синхронизировать файл gradle ( «Синхронизировать проект с gradle файлами» ). Это очистит маркер.
Обновление manifest.xml, например. удаление каких-либо ссылок на уровни SDK в файле манифеста больше не требуется в Android Studio.
Sotti
23 нояб. 2013, в 22:19
Поделиться
Для пользователей студии Android:
- щелкните правой кнопкой мыши каталог приложения
- выберите параметр «настройка модуля»
- измените платформу ADK как то, что вам нужно
- Нажмите «Применить»
gradle автоматически перестроит проект.
user3291001
10 фев. 2014, в 01:05
Поделиться
Как сейчас Android Studio стабильна, есть простой способ сделать это.
- Щелкните правой кнопкой мыши файл проекта
- Выберите «Открыть настройки модуля»
- Перейдите на вкладку «Ароматизаторы».
- Выберите Min SDK Version из выпадающего списка
PS: Хотя на этот вопрос уже был дан ответ, но Android Studio немного изменила его стабильный выпуск. Таким образом, простой прямой способ поможет любому новому поиску ответа приземлиться здесь.
priyankvex
23 дек. 2014, в 19:35
Поделиться
В студии Android вы можете легко нажать:
- Ctrl + Shift + Alt + S.
- Если у вас есть более новая версия
android studio
, чем сначала нажмите на приложение.
чем продолжить с шага 3 следующим образом. - Откроется окно с набором параметров
- Перейдите в Flavors, и на самом деле все, что вам нужно
Вы также можете изменить versionCode
вашего приложения.
Salah Klein
13 май 2015, в 20:51
Поделиться
В build.gradle
измените minSdkVersion 13
на minSdkVersion 8
. Это все, что вам нужно сделать. Я решил свою проблему, только делая это.
defaultConfig {
applicationId "com.example.sabrim.sbrtest"
minSdkVersion 8
targetSdkVersion 20
versionCode 1
versionName "1.0"
}
Sabri Meviş
05 июль 2014, в 15:01
Поделиться
В соответствии с этим ответом вы просто не включаете minsdkversion в файл manifest.xml, а система сборки будет использовать значения из файла build.gradle и поместите информацию в окончательный apk.
Поскольку система сборки нуждается в этой информации, это имеет смысл. Вам не нужно указывать эти значения два раза.
Вам просто нужно синхронизировать проект после изменения файла build.gradle
, но Android Studio 0.5.2 отображает желтую строку состояния поверх окна редактора build.gradle, чтобы помочь вам
Также обратите внимание на наличие как минимум двух файлов build.gradle
: один мастер и один для приложения/модуля. Тот, который нужно изменить, находится в приложении/модуле, он уже включает свойство minSdkVersion
во вновь сгенерированном проекте.
Meier
15 апр. 2014, в 09:38
Поделиться
Если у вас возникли проблемы с указанием целевой SDK для API Google вместо базового пакета SDK, просто измените compileSdkVersion 19
на compileSdkVersion "Google Inc.:Google APIs:19"
Juan Reyes
07 май 2014, в 18:16
Поделиться
Также, как и обновление манифеста, обновите файл модуля build.gradle
тоже (он указан в панели проекта чуть ниже манифеста — если там нет minSdkVersion
), вы смотрите на неправильный, так как там пара). Перестроить и все должно быть хорошо…
Chris Rolliston
10 нояб. 2013, в 13:25
Поделиться
Для последней версии Android Studio v2.3.3 (11 октября 2017 года):
1. Нажмите View
в строке меню
2. Нажмите «Открыть настройки модуля»
3. Откройте вкладку Flavors
4. Выберите Min Sdk
версию, которая вам нужна
6. Нажмите OK
Rido
10 окт. 2017, в 22:14
Поделиться
Gradle Скрипты →
build.gradle(модуль: приложение) → minSdkVersion (Your min sdk version)
Hubert Hubert
12 июль 2016, в 11:32
Поделиться
Изменение minSdkVersion в манифесте не требуется. Если вы измените его в файле сборки gradle, как показано ниже, вы выполните то, что вам нужно сделать.
defaultConfig {
applicationId "com.demo.myanswer"
minSdkVersion 14
targetSdkVersion 23
versionCode 1
versionName "1.0"
}
Chris
01 июль 2016, в 15:58
Поделиться
В студии Android откройте build.gradle и отредактируйте следующий раздел:
defaultConfig {
applicationId "com.demo.myanswer"
minSdkVersion 14
targetSdkVersion 23
versionCode 1
versionName "1.0"
}
здесь вы можете изменить minSdkVersion от 12 до 14
Dharmendra Pratap
20 май 2016, в 08:00
Поделиться
Для меня работал: (щелчок правой кнопкой мыши) project- > инструменты android- > clear lint markers. Хотя по какой-то причине Manifest вернулась к старому (более низкому) уровню API, но после того, как я изменил ее на новый (более высокий) уровень API, не было подчеркивания красной ошибки, и теперь проект использует новый минимальный уровень API.
Изменить: Извините, я вижу, что вы использовали Android Studio, а не Eclipse. Но я думаю, что в Studio есть похожие «четкие метки метки», и это может решить проблему.
Jamppa
27 окт. 2013, в 10:58
Поделиться
Ещё вопросы
- 0Как это можно изменить, чтобы показать 2 видео?
- 0Spring Security + угловое приложение REST-аутентификация на основе токенов = 403 запрещено на POST
- 1.Net c # библиотеки / сборки — Crystal Reports
- 1Android Убить всех открытых ProgressDialogs?
- 0Отключить всплывающую подсказку текста компонентов в iframe (другой домен)?
- 0Mysql создает нового пользователя: пропущена часть «@ <host>», когда удаленный доступ всегда будет использовать оболочку ssh?
- 1Pyjnius «не могу найти класс» ошибка
- 0Jquery Выбранный класс
- 1Где разместить пользовательские данные
- 0Добавить Telerik Grid Control на HTML-странице
- 1Не повторяйте DAO! Использование универсального DAO
- 1Как подключить Microsoft Graph с помощью Python без UI Interaction?
- 1getLastNonConfigurationInstance ()
- 1Иконка быстрого доступа Python cx-freeze
- 0С ++ Шаблонный Функтор
- 1Установка элемента управления в шаблоне данных как CommandTarget для кнопки вне шаблона
- 1Группировка данных в сборе в одном формате в другой
- 1Противоречивые методы на множественном наследовании интерфейса
- 1Холст анимация с JavaScript. Случайные координаты и скорость при каждом запуске
- 0Как сделать СУММУ (МАКС () + МАКС ())?
- 0Сделать поле Smarty обязательным
- 1Когда мне нужны инфляторы?
- 1OAuth в .NET для xing 401
- 1Оценка GridSearchCV по средней абсолютной ошибке
- 0Импортируйте CSV в базу данных, используя CakePHP
- 0Перекрытие тега списка
- 1asyncio.await завершается с ошибкой TypeError: не может распаковать не повторяемый объект сопрограммы
- 0Как сопоставить абсолютное значение с помощью регулярных выражений
- 0Липкий заголовок стола со 100% -й высотой «панелей»
- 0ASP.NET Javascript фреймворки теперь
- 0Ошибка компиляции: const int * & reference = pointer_to_int. Почему?
- 1Как добавить элементы из строки, добавленной из консоли, в список в Java
- 1Простая карта JavaScript — использование объекта в качестве возврата
- 1Плагин для другого приложения для Android
- 0sql: выбор значения в таблице атрибутов
- 0Переупорядочить массив PHP на случайное вторичное значение
- 1Интеграция аутентификации Google в существующее приложение
- 0C ++ File I / O и указатели
- 0одушевление и исчезновение одновременно — JQuery
- 0JavaScript, если () не работает
- 1Как заставить индикатор выполнения использовать изображение, чтобы показать прогресс вместо использования цвета в Android
- 1Как я могу сделать этот Observable более пригодным для повторного использования?
- 1Открытый плагин NetBeans и OpenOffice
- 1откуда я могу получить пакет com.sun.cnpi?
- 0Веб-сервисы C #, использующие неуправляемые C ++ dll, имеют ошибку iis
- 1Невозможно передать переменную в функцию typewrite в python
- 0Я не могу перезагрузить код проверки моей контактной формы
- 0Угловой: Установить размер входного тега на основе длины содержимого
- 0используя функции для ввода 1 int и 1 строкового массива и зацикливания
- 1запустить функцию при прокрутке с колесом