如何在Android Studio中为项目设置最小api级别?

时间:2014-01-30 07:07:52

标签: android gradle android-studio

我最近将项目迁移到Android Studio 0.4.3。 在编译时,它给了我几行java的错误,包括以下内容:

FragmentManager fm = getFragmentManager();

fm.findFragmentById()

@Override
    public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

getResources().getStringArray(R.array.course_descriptions); 

我看到以下错误消息:

Call requires API level 11 (current min is 7)

我正在运行Android Studio .0.4.3。我还通过SDK管理器下载了Android 4.4.2(API 19)。

我在清单中添加了以下行:

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

我做了一个“与Gradle文件同步项目”,清理并重建了项目。 我仍然看到同样的错误。

如何解决此问题?

6 个答案:

答案 0 :(得分:31)

我有0.8.6版本,可以这样做:

在菜单中:文件 - &gt;项目结构。

在打开的菜单中,导航至app,然后在标签中选择Flavors

enter image description here

答案 1 :(得分:15)

如果您已在最新版本的Android Studio上生成项目,则该设置位于gradle配置文件中。在应用程序模块中查找build.gradle文件。应该有这样的东西。

defaultConfig {
    minSdkVersion 7
    targetSdkVersion 19
    versionCode 1
    versionName "1.0"
}

答案 2 :(得分:6)

从gradle构建系统开始,所有与sdk和编译API相关的设置都将被您在build.gradle文件中定义的内容覆盖。

如果您愿意,可以在 AndroidManifest.xml 中删除所有配置,并将其保留在build.gradle文件中,以避免混淆。

请检查模块的minSdkVersion文件中发现错误的build.gradle

android {
    compileSdkVersion 19
    buildToolsVersion '19.0.1'

    defaultConfig {
        minSdkVersion 7      // Change 7 to 11 will solve your problem
        targetSdkVersion 19
    }

}

我更喜欢在我的顶级项目级别build.gradle文件中包含这些所有配置,因为如果不同模块中的配置不同,则最终会出现Manifest Merging错误。

答案 3 :(得分:2)

在2020年最新版本中,执行以下步骤:

  1. 单击文件(左上方)
  2. 转到项目结构(Ctlr + Alt + Shift + S)
  3. 单击模块
  4. 在右窗格中,单击“默认配置”(中间)
  5. 更改最低SDK版本
  6. 应用并单击“确定”

完成!

答案 4 :(得分:1)

完整app / build.gradle minSdkVersion,targetSdkVersion

apply plugin: 'com.android.application'
android {
compileSdkVersion 22
buildToolsVersion "22.0.1"

defaultConfig {
    applicationId "com.yourapp.package"
    minSdkVersion 18
    targetSdkVersion 22
    versionCode 1
    versionName "1.0"
}
buildTypes {
    release {
        minifyEnabled false
        proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
    }
}

packagingOptions {
    exclude 'LICENSE.txt'
}
}

dependencies {
androidTestCompile fileTree(dir: 'libs', include: '*.jar')
androidTestCompile('com.squareup.assertj:assertj-android:1.0.0'){
    exclude group: 'com.android.support', module:'support-annotations'
    }
}

答案 5 :(得分:1)

只需按照步骤(对于android studio用户):

  1. 右键单击App目录
  2. 选择&#34;模块设置&#34;选项
  3. 根据需要更改ADK平台
  4. 点击“应用”
  5. 所有伙伴,Gradle将自动重建项目。