【问题标题】:Changing API level Android Studio更改 API 级别 Android Studio
【发布时间】:2013-10-28 04:55:58
【问题描述】:

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

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

并重建项目,但我仍然让 Android Studio IDE 抛出一些错误。我想我必须在“项目属性”或类似的东西中设置 min SDK,以便 IDE 识别更改,但我在 Android Studio 中找不到这样做的位置。

【问题讨论】:

  • 这是什么错误?没有 logcat,我们无法为您提供帮助
  • 它们不是编译错误。当我尝试在布局 xml 中使用“GridLayout”时,IDE 会给出红色下划线,即告诉我需要最低 API 级别 14。因此,Android Studio 中必须有某个地方可以在创建项目后设置最低 API 级别。我看过 Eclipse 的类似帖子,但 Android Studio 没有。
  • 您是否安装了 API 级别 14 SDK 包?
  • 如果我开始一个新项目并从一开始就选择 API 级别 14,我在 Android Studio 中开发没有问题,即我必须安装 API 级别 14 SDK。但是,如果我只是想更新现有项目以至少使用 API 14,我无法确定我告诉它在 Android Studio GUI IDE 中的哪个位置执行此操作。
  • 发布您的Logcat。并更改MinSDKVersion 这是您已经尝试过的最简单的解决方案.. 即更改Manifest

标签: android android-studio sdk android-api-levels


【解决方案1】:

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

  1. 更新build.gradle(Module: app) - 确保是 Gradle Script 下的那个,它是NOT 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 文件“重建项目”同步项目 构建 -> 重建项目

  1. 重建项目

更新build.gradleminSdkVersion后,你必须点击按钮来同步gradle文件(“Sync Project with Gradle files”)。这将清除标记。

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

【讨论】:

  • 我项目的 build.gradle 是空的?更新的语法是什么? --- 糟糕,有两个 build.gradle 文件。我发现 -> src 中的那个有版本等。
  • 使用这个建议,我设法让事情同步,但我必须在编译没有错误之前退出 Android Studio。我执行了很多小步骤,所以我不知道真正必要的步骤是什么。
  • 他们为什么把它弄得这么痛?似乎记得在日食中我只需要在一个地方这样做......
  • @DeanWild 在 Android Studio 中也是如此。忘记清单文件中的 API 级别。
  • 对于Android Studio的初学者“同步gradle按钮”位于Tools -&gt; Android -&gt; Sync Project with Gradle Files“重建项目”Build -&gt; Rebuild Project
【解决方案2】:

对于安卓工作室用户:

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

gradle 会自动重建项目。

【讨论】:

  • 对我来说,上面给出的解决方案是最好的方法。让该工具进行所有必要的更改,以免您自己摆弄不同的文件,冒着搞砸事情或忘记重要细节的风险。
  • 这在 Studio 0.8.2 中不起作用。您可以更改设置并按 aplly,但工作室会忽略这一点。
    解决方案: - 关闭 Android Studio - 编辑“/app/build.gradle” - 更改 SDK-MinVersion 条目 - 自动重启 Android Studio Gradle 同步
  • 在 Studio 1.4 中,您需要查看“风味”选项卡。请参阅 priyankvex 的答案。
  • 在 Studio 3.5 中,您需要单击“默认配置”选项卡。风味标签似乎不再存在。
【解决方案3】:

现在 Android Studio 已经稳定了,有一种简单的方法可以做到这一点。

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

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

PS: 虽然这个问题已经得到解答,但 Android Studio 已经在其稳定版本中发生了一些变化。因此,一个简单直接的方法将帮助任何新的答案寻求者登陆这里。

【讨论】:

  • 编辑 gradle 文件对我不起作用,但确实如此。谢谢!
  • 这又变了:“风味”标签不再存在。相反,在第 3 步中,在“项目设置”区域中单击“模块”,然后使用“项目级别”下拉框选择 API 版本。这与设置最低 API 版本不同,而是用于构建应用程序的版本。
  • 这必须是公认的答案。至少更新版本的 Android Studio
  • 我只在下拉列表中获得 api 23... 我需要 api 10
  • 一点点?这个 fking IDE 在版本之间变化很大,导致运行旧代码时出现很多中断。与微软所代表的向后兼容性的传统相比,非常非常可悲。
【解决方案4】:

在android studio中你可以轻松按下:

  1. Ctrl + Shift + Alt + S
  2. 如果您有更新版本的android studio,请先按应用程序。 然后,继续执行以下第三步。
  3. 将打开一个窗口,其中包含一系列选项
  4. 转到Flavors,这就是您所需要的全部

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

【讨论】:

    【解决方案5】:

    build.gradle 中将minSdkVersion 13 更改为minSdkVersion 8 这就是您需要做的所有事情。我只这样做就解决了我的问题。

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

    【讨论】:

      【解决方案6】:

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

      因为构建系统无论如何都需要这些信息,所以这是有道理的。您不需要定义此值两次。

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

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

      【讨论】:

        【解决方案7】:

        对于最新的 Android Studio v2.3.3(2017 年 10 月 11 日):
        1.点击菜单栏上的View
        2. 点击打开模块设置
        3.打开Flavors标签
        4.选择你需要的最小Sdk版本
        6.点击确定

        【讨论】:

          【解决方案8】:

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

          【讨论】:

            【解决方案9】:

            除了更新清单之外,还要更新模块的 build.gradle 文件(它列在清单下方的项目窗格中 - 如果其中没有 minSdkVersion 键,那么您正在查看错误的文件,因为有一对)。重建,一切都会好起来的......

            【讨论】:

              【解决方案10】:

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

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

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

              【讨论】:

                【解决方案11】:

                文件>项目结构>模块 你可以从那里改变它

                【讨论】:

                  【解决方案12】:

                  无需更改清单中的 minSdkVersion。如果您在 gradle 构建文件中更改它,如下所示,您就完成了您需要做的事情。

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

                  【讨论】:

                    【解决方案13】:

                    当您想更改最低 SDK 时,您应该注意 模块中的minSdkVersion[About] build.garadle

                    android {
                      defaultConfig {
                        minSdkVersion 21
                      }
                    }
                    

                    【讨论】:

                      【解决方案14】:

                      对我来说有效的是:(右键单击)项目-> android 工具-> 清除 lint 标记。虽然由于某种原因 Manifest 恢复到旧的(较低的)最低 API 级别,但是在我将其更改回新的(较高的)API 级别后,没有红色错误下划线,项目现在使用新的最低 API 级别。

                      编辑:抱歉,我看到您使用的是 Android Studio,而不是 Eclipse。但我猜在 Studio 的某个地方有一个类似的“清除棉绒标记”,它可能会解决问题。

                      【讨论】:

                        【解决方案15】:

                        Gradle 脚本 ->
                        build.gradle(模块:app)->
                        minSdkVersion (Your min sdk version)

                        【讨论】:

                          猜你喜欢
                          • 2014-12-01
                          • 1970-01-01
                          • 1970-01-01
                          • 2012-08-01
                          • 1970-01-01
                          • 1970-01-01
                          • 1970-01-01
                          • 1970-01-01
                          相关资源
                          最近更新 更多