Изменение уровня API Android Studio

Я хочу изменить минимальную версию SDK в Android Studio с API 12 на API 14. Я попытался изменить ее в файле манифеста, т.е.

<uses-sdk
    android:minSdkVersion="14"
    android:targetSdkVersion="18" />

и перестроил проект, но я по-прежнему получаю от IDE Android Studio некоторые ошибки. Я предполагаю, что мне нужно установить min SDK в «свойствах проекта» или что-то подобное, чтобы IDE распознала изменение, но я не могу найти, где это делается в Android Studio.


person James B    schedule 19.10.2013    source источник
comment
что это за ошибки? мы не можем помочь вам без logcat   -  person Arash GM    schedule 19.10.2013
comment
Это не ошибки компиляции. Это среда IDE, подчеркивающая красное подчеркивание, когда я пытаюсь использовать GridLayout в макете xml, т.е. сообщая мне, что требуется минимальный уровень API 14. Следовательно, должно быть где-то в Android Studio, где вы можете установить минимальный уровень API после создания проекта. Я видел похожие сообщения для Eclipse, но не для Android Studio.   -  person James B    schedule 19.10.2013
comment
Вы установили пакет SDK уровня API 14?   -  person ramaral    schedule 19.10.2013
comment
Если я начинаю новый проект и с самого начала выбираю уровень API 14, у меня не возникает проблем с разработкой в ​​Android Studio, то есть у меня должен быть установлен SDK уровня API 14. Однако, если я просто хочу обновить существующий проект, чтобы использовать как минимум API 14, я не могу понять, где именно в среде IDE графического интерфейса Android Studio, которую я приказываю сделать это.   -  person James B    schedule 19.10.2013
comment
Разместите свой Logcat. и для изменения MinSDKVersion это очень простое решение, которое вы уже пробовали ... т.е. изменить Manifest   -  person Mitesh Shah    schedule 19.10.2013
comment
похоже, что это ошибка Android Studio   -  person GusDeCooL    schedule 07.12.2013
comment
Вы можете обновить свой API с помощью мастера, см. Эту ссылку: stackoverflow.com/questions/21449947/   -  person AsfK    schedule 25.08.2014
comment
@ArashGM Logcat не нужен, он не имеет ничего общего с тем, что он спрашивает, он просто спрашивает, как изменить API, а не об ошибках. (Это было после того, как пост отредактировали)   -  person Devealte    schedule 31.01.2019


Ответы (15)


Если вы хотите обновить minSdkVersion в существующем проекте ...

  1. Обновление build.gradle(Module: app). Убедитесь, что это тот, который находится в разделе Скрипт Gradle, а это НЕ build.gradle(Project: yourproject).

Пример 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'])
}
  1. Кнопка синхронизации Gradle (также можно обновить все проекты Gradle)

Для новичков в Android Studio «Кнопка синхронизации градиента» находится в Инструменты -> Android -> Синхронизировать проект с файлами Gradle «Перестроить проект» Сборка -> Перестроить проект

  1. Восстановить проект

После обновления minSdkVersion build.gradle необходимо нажать кнопку, чтобы синхронизировать файл Gradle («Синхронизировать проект с файлами Gradle»). Это очистит маркер.

Обновление manifest.xml, например, для удаление любых ссылок на уровни SDK в файле манифеста больше НЕ требуется в Android Studio.

person Sotti    schedule 23.11.2013
comment
Мой проект build.gradle пуст? Какой синтаксис нужно обновить? --- Ой, есть два файла build.gradle. Я нашел тот, который находится в - ›src имеет версии и т. Д. - person mobibob; 27.12.2013
comment
Воспользовавшись этим советом, мне удалось добиться синхронизации, но мне пришлось ВЫЙТИ из Android Studio, прежде чем компиляция прошла без ошибок. Я выполнил много маленьких шагов, поэтому не знаю, какой шаг был действительно необходимым. - person mobibob; 28.12.2013
comment
почему они сделали так, что мяч заболел? кажется, помню, что в затмении мне нужно было сделать это только в одном месте ... - person Dean Wild; 10.06.2014
comment
@DeanWild В Android Studio тоже есть в одном месте. Забудьте об уровнях API в файле манифеста. - person Sotti; 26.07.2014
comment
Можно ли вместо этого использовать манифест? Кроме того, можно ли сделать так, чтобы он всегда использовал самые последние доступные инструменты для сборки? - person android developer; 09.01.2015
comment
На данный момент вы можете найти два build.gradle внутри папки Gradle Scripts, мне нужно было выбрать тот, у которого есть Module: app. - person inquisitive; 19.05.2015
comment
@androiddeveloper. Gradle переопределяет манифест, поэтому просто удалите его из файла Gradle и добавьте в свой файл манифеста. Я НЕ рекомендую это, Gradle - это путь, и есть причины, по которым они перешли от манифеста к Gradle. - person Sotti; 21.07.2015
comment
@Sotti Спасибо. Не знал этого. Какая польза от помещения его в файл Gradle? - person android developer; 21.07.2015
comment
@Quantumdroid Это потому, что вы используете представление Android. Мне не нравится такая точка зрения, и я ею не пользуюсь. - person Sotti; 29.09.2015
comment
Для новичков в Android Studio кнопка Gradle Sync находится в Tools -> Android -> Sync Project with Gradle Files Rebuild project Build -> Rebuild Project - person CGR; 29.06.2017

Для пользователей студии Android:

  1. щелкните правой кнопкой мыши каталог приложения
  2. выберите опцию «настройка модуля»
  3. измените платформу ADK на то, что вам нужно
  4. Нажмите Применить

Gradle автоматически перестроит проект.

person user3291001    schedule 10.02.2014
comment
Приведенное выше решение для меня - лучший способ. Позвольте инструменту внести все необходимые изменения, так как вы сами возитесь с разными файлами, рискуя испортить вещи или забыть важные детали. - person GeertVc; 22.07.2014
comment
Это не работает в Studio 0.8.2. Вы можете изменить настройки и нажать aplly, но студия проигнорирует это. ‹Br/› Решение: - Закройте Android Studio - Отредактируйте /app/build.gradle - измените запись SDK-MinVersion - перезапустите Android Studio Gradle синхронизируется автоматически - person Martin; 05.08.2014
comment
В Studio 1.4 вам нужно заглянуть во вкладку Flavors. См. Ответ priyankvex. - person Yannick; 25.10.2015
comment
В Studio 3.5 вам нужно перейти на вкладку Default Config. Вкладка "Ароматизаторы" больше не существует. - person Sum None; 08.09.2019

Поскольку теперь Android Studio стабильна, есть простой способ сделать это.

  1. Щелкните правой кнопкой мыши файл вашего проекта
  2. Выберите «Открыть настройки модуля».
  3. Перейдите во вкладку «Ароматизаторы».

введите здесь описание изображения

  1. В раскрывающемся списке выберите минимальную версию SDK.

PS: Хотя на этот вопрос уже был дан ответ, Android Studio немного изменилась благодаря своей стабильной версии. Так что простой и понятный способ поможет любому новому ищущему ответа попасть сюда.

person priyankvex    schedule 23.12.2014
comment
Редактирование файлов gradle у меня не сработало, но это сработало. Спасибо! - person Al0x; 05.09.2015
comment
Это снова изменилось: вкладки «Ароматизаторы» больше нет. Вместо этого на шаге 3 в области «Параметры проекта» щелкните «Модули», затем в раскрывающемся списке «Уровень проекта» выберите версию API. Это не то же самое, что установка минимальной версии API, а скорее версия, которая будет использоваться для создания приложения. - person hamx0r; 13.11.2015
comment
Это должен быть принятый ответ. По крайней мере, более новая версия Android Studio - person Vivekanand; 25.02.2016
comment
Я получаю только api 23 в раскрывающемся списке ... Мне нужен api 10 - person Reign.85; 07.03.2016
comment
немного? эта fking IDE сильно меняется между версиями, вызывая множество перерывов в запуске старого кода. Очень жалко по сравнению с наследием обратной совместимости, примером которого является Microsoft. - person user30478; 31.08.2018
comment
Принятый ответ и второй наиболее принятый ответ у меня не сработали, много ошибок при сборке, это правильное решение для меня! Благодарность - person Seichi; 13.09.2018

В студии Android вы можете легко нажать:

  1. Ctrl + Shift + Alt + S.
  2. Если у вас более новая версия android studio, сначала нажмите на приложение. Затем перейдите к шагу 3 следующим образом.
  3. Откроется окно с кучей опций
  4. Перейдите в Ароматизаторы, и это все, что вам нужно.

Вы также можете изменить versionCode своего приложения там.

person Salah Klein    schedule 13.05.2015

В build.gradle измените minSdkVersion 13 на minSdkVersion 8 Это все, что вам нужно сделать. Я решил свою проблему, сделав только это.

defaultConfig {
    applicationId "com.example.sabrim.sbrtest"
    minSdkVersion 8
    targetSdkVersion 20
    versionCode 1
    versionName "1.0"
}
person Sabri Meviş    schedule 05.07.2014

Согласно этому ответу, вы просто не включаете minsdkversion в manifest.xml, и система сборки будет использовать значения из файла build.gradle и поместите информацию в финальный apk.

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

Вам просто нужно синхронизировать проект после изменения файла build.gradle, но Android Studio 0.5.2 отображает желтую строку состояния в верхней части окна редактора build.gradle, чтобы помочь вам

Также обратите внимание, что есть как минимум два build.gradle файла: один главный и один для приложения / модуля. То, что нужно изменить, находится в приложении / модуле, оно уже включает свойство minSdkVersion во вновь созданном проекте.

person Meier    schedule 15.04.2014

Для последней версии Android Studio v2.3.3 (11 октября 2017 г.):
1. Нажмите View в строке меню
2. Нажмите "Открыть настройки модуля"
3. Откройте вкладку Flavors
4. Выберите "Мин. Sdk" версия, которая вам нужна
 Окно структуры проекта IDE 6. Нажмите" ОК ".

person Rido    schedule 10.10.2017

Если у вас возникли проблемы с указанием цели SDK для API Google вместо базового SDK платформы, просто измените compileSdkVersion 19 на compileSdkVersion "Google Inc.:Google APIs:19"

person Juan Reyes    schedule 07.05.2014

Помимо обновления манифеста, также обновите файл build.gradle модуля (он указан на панели проекта чуть ниже манифеста - если в нем нет ключа minSdkVersion, вы смотрите не на тот файл, так как есть пара). Перестройка, и все должно быть в порядке ...

person Chris Rolliston    schedule 10.11.2013

В студии Android откройте build.gradle и отредактируйте следующий раздел:

defaultConfig {
    applicationId "com.demo.myanswer"
    minSdkVersion 14
    targetSdkVersion 23
    versionCode 1
    versionName "1.0"
}

здесь вы можете изменить minSdkVersion с 12 на 14

person Dharmendra Pratap    schedule 20.05.2016

Файл> Структура проекта> Модули, вы можете изменить это оттуда

person Wisam Atil    schedule 07.02.2020

Изменять minSdkVersion в манифесте не нужно. Если вы измените его в файле сборки gradle, как показано ниже, вы выполните то, что вам нужно сделать.

defaultConfig {
   applicationId "com.demo.myanswer"
   minSdkVersion 14
   targetSdkVersion 23
   versionCode 1
   versionName "1.0"
}
person Chris Deck    schedule 01.07.2016

Для меня сработало: (щелкните правой кнопкой мыши) проект-> инструменты Android-> очистить маркеры ворса. Хотя по какой-то причине манифест вернулся к старому (более низкому) минимальному уровню API, но после того, как я вернул его на новый (более высокий) уровень API, не было красного подчеркивания ошибки, и теперь в проекте используется новый минимальный уровень API.

Изменить: извините, я вижу, вы использовали Android Studio, а не Eclipse. Но я предполагаю, что где-то в Studio есть похожие «четкие маркеры ворса», и это может решить проблему.

person Jamppa    schedule 27.10.2013

Скрипты Gradle ->
build.gradle (Модуль: приложение) ->
minSdkVersion (Your min sdk version)

person Hubert Hubert    schedule 12.07.2016

Если вы хотите изменить минимальный SDK, вам следует позаботиться о minSdkVersion [About] в модуль build.garadle

android {
  defaultConfig {
    minSdkVersion 21
  }
}
person yoAlex5    schedule 30.05.2021