更改API级别的Android Studio


414

我想将Android Studio中的最低SDK版本从API 12更改为API14。我尝试在清单文件中进行更改,即

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

并重建项目,但是我仍然得到Android Studio IDE抛出一些错误。我想我必须在“项目属性”或类似的项目中设置min SDK,以便IDE可以识别更改,但是我找不到在Android Studio中完成的操作。


1
那是什么错误?如果没有logcat,我们将无济于事
Arash GM

1
它们不是编译错误。当我尝试在布局xml中使用“ GridLayout”时,即IDE带有红色下划线,即告诉我要求最低API级别14。因此,在Android Studio中必须有一个地方,您可以在创建项目后设置最低API级别。我见过类似的关于Eclipse的文章,但没有关于Android Studio的文章。
詹姆斯·B

您是否安装了API级别14 SDK软件包?
ramaral

如果我开始一个新项目并从一开始就选择API级别14,那么在Android Studio中进行开发就没有问题,也就是说,我必须安装API级别14 SDK。但是,如果我只是想更新一个现有项目以最少使用API​​ 14,我将无法确定我在Android Studio GUI IDE中执行的操作。
詹姆斯·B

发布您的Logcat。更改MinSDKVersion它是您已经尝试过的最简单的解决方案。iechange inManifest
Mitesh Shah

Answers:


582

当您想在现有项目中更新您的minSdkVersion时...

  1. 更新build.gradle(Module: app) -确保是Gradle Script下的那个,不是 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中的初学者,“同步gradle按钮”位于工具-> Android->使用Gradle文件同步项目“ Rebuild project” Build-> Rebuild Project

  1. 重建项目

经过更新的build.gradleminSdkVersion,你必须点击按钮的gradle同步文件(‘同步工程与摇篮文件’)。这将清除标记。

在Android Studio中,不再需要更新manifest.xml,例如删除清单文件中对SDK级别的任何引用。


7
我的项目的build.gradle为空?更新的语法是什么?---糟糕,有两个build.gradle文件。我发现了一个在- > SRC有版本等
mobibob

4
根据这个建议,我设法使事情同步,但是在编译没有错误之前,我不得不退出Android Studio。我执行了许多小步骤,所以我不知道真正必要的步骤是什么。
mobibob

5
他们为什么要这么痛?似乎记得在月食时我只需要在一个地方做这件事……
迪恩·

1
Android Studio中的@DeanWild也位于一处。忘记清单文件中的API级别。
索蒂2014年

2
对于Android Studio中的初学者,“同步gradle按钮”位于Tools -> Android -> Sync Project with Gradle Files“重建项目”中Build -> Rebuild Project
CGR

169

对于android studio用户:

  1. 右键单击App目录
  2. 选择“模块设置”选项
  3. 根据需要更改ADK平台
  4. 点击应用

gradle将自动重建项目。


3
对我来说,以上给出的解决方案是最好的方法。让该工具进行所有必要的更改,即让您自己摆弄不同的文件,冒着搞砸事情或忘记重要细节的风险。
GeertVc 2014年

2
这在Studio 0.8.2中不起作用。自动重启的Android Studio的摇篮同步-关闭Android的工作室- -编辑“/app/build.gradle” -改变SDK-MINVERSION条目:您可以更改设置,然后按aplly,但工作室忽略此<BR/>解决方案。
马丁

在Studio 1.4中,您需要查看“风味”标签。请参阅priyankvex的答案。
亚尼克(Yannick)

在Studio 3.5中,您需要单击“默认配置”选项卡。风味选项卡似乎不再存在。
总和没有

135

由于现在Android Studio稳定了,因此有一种简便的方法。

  1. 右键单击您的项目文件
  2. 选择“打开模块设置”
  3. 转到“风味”标签。

在此处输入图片说明

  1. 从下拉列表中选择Min SDK版本

PS:尽管已经回答了这个问题,但Android Studio的稳定版本已对其进行了一些更改。因此,简单易行的方法将帮助所有新的求职者在这里着陆。


1
编辑gradle文件对我而言不起作用,但确实如此。谢谢!
Al0x 2015年

1
情况又发生了变化:“风味”标签不再存在。而是在步骤3的“项目设置”区域中,单击“模块”,然后使用“项目级别”下拉框选择API版本。这与设置最低API版本不同,而是用于构建应用程序的版本。
hamx0r 2015年

这必须是公认的答案。最低版本的Android Studio
Vivekanand,2016年

3
我在下拉菜单中仅获得api 23 ...我需要api 10
Reign.85

1
一点?该fing IDE在版本之间进行了很大的更改,导致在运行旧代码时出现很多中断。与Microsoft举例说明的向后兼容性的遗产相比,这非常可悲。
user30478 '18

10

在android studio中,您可以轻松按:

  1. Ctrl+ Shift+ Alt+ S
  2. 如果您使用的较新版本android studio,请先按app。然后,继续执行以下第三步。
  3. 一个带有多个选项的窗口将打开
  4. 转到风味,这实际上就是您所需要的

您也可以在versionCode此处更改应用的。


6

build.gradle更改minSdkVersion 13minSdkVersion 8Thats,您需要做的所有事情。我只是通过这样做解决了我的问题。

defaultConfig {
    applicationId "com.example.sabrim.sbrtest"
    minSdkVersion 8
    targetSdkVersion 20
    versionCode 1
    versionName "1.0"
}

6

根据这个答案,您只需要在manifest.xml中不包含minsdkversion,构建系统将使用build.gradle文件中的值并将信息放入最终的apk中。

因为构建系统仍然需要此信息,所以这很有意义。您无需两次定义该值。

您只需要在更改build.gradle文件后同步项目即可,但是Android Studio 0.5.2在build.gradle编辑器窗口顶部显示黄色状态栏,以帮助您

还要注意至少有两个build.gradle文件:一个主文件和一个用于应用程序/模块的文件。要更改的是在应用程序/模块中,它已经minSdkVersion在新生成的项目中包含一个属性。


5

如果您在将SDK目标指定为Google API而不是基本Platform SDK时遇到麻烦,只需将更compileSdkVersion 19改为compileSdkVersion "Google Inc.:Google APIs:19"


5

对于最新的Android Studio v2.3.3(2017年10月11日):
1.单击View菜单栏上的
2.单击打开模块设置
3.打开Flavors选项卡
4.选择Sdk所需的最低版本
IDE项目结构窗口 6.单击确定


4

在更新清单的同时,build.gradle也要更新模块的文件(在清单下方的项目窗格中列出了该文件-如果其中没有minSdkVersion密钥,则说明错误,因为有几个)。重建,一切都应该很好...


3

在Android Studio中,打开build.gradle并编辑以下部分:

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

在这里您可以将minSdkVersion从12更改为14


1

无需更改清单中的minSdkVersion。如果您在gradle构建文件中对其进行了更改(如下所示),则可以完成您需要做的事情。

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

0

对我来说,有效的方法是:(右键单击)项目-> android工具->清除棉绒标记。尽管出于某些原因,清单已还原为旧的(较低)最低API级别,但是在我将其更改回新的(较高)API级别之后,没有出现红色错误下划线,并且该项目现在使用了新的最低API级别。

编辑:对不起,我看到您使用的是Android Studio,而不是Eclipse。但是我想Studio中的某个地方也有类似的“清晰的棉绒标记”,这也许可以解决问题。



By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.