2014-01-30 171 views
15

我最近将一个项目迁移到Android Studio 0.4.3。 编译时,它给我的错误上几行的Java,包括以下内容:如何为Android Studio中的项目设置最低api级别?

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工作室.0.4.3。我还通过SDK管理器下载了Android 4.4.2(API 19)。

添加以下行到我的清单:

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

我做了一个“同步工程与摇篮文件”,清理和重建项目。 我仍然看到相同的错误。

如何解决此问题?

+0

嗨,我想你正在编译与另一个版本的机器人(不是19)。如果你在eclipse上,你可以试试proyect属性,android库,检查那里是正确的API 19.问候。 – JSG33kC0d3

+0

我刚刚发现了一些有趣的东西。一个错误被捕获由工作室: 'java.lang.ArrayIndexOutOfBoundsException:20 \t在org.jetbrains.android.dom.converters.ApiVersionConverter.getApiLevelLabel(ApiVersionConverter.java:57) ' – Marius

回答

14

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

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

从gradle这个构建系统的所有设置才能SDK和API的编制将在您的build.gradle文件定义什么可以覆盖相关的开始。

所以前进,如果你愿意,你可以从你的AndroidManifest.xml删除这些所有配置,并让他们在build.gradle文件只是为了避免混淆。

因此检查模块的build.gradle文件中的minSdkVersion,这是抛出错误。

android { 
    compileSdkVersion 19 
    buildToolsVersion '19.0.1' 

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

} 

我更喜欢有这些所有的配置在我的前项目级别build.gradle文件,因为如果配置在不同的模块不同,你会结束了与清单合并错误。

30

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

在菜单:文件 - >项目结构。

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

enter image description here

+2

在Android Studio中1.2.2:后您建议您的更改应该运行**同步项目与Gradle文件**(图标 - 按钮位于工具栏中** Run **图标的某处),以便应用更改 – Universe

1

全部应用程序/编译。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' 
    } 
} 
1

只需按照步骤(针对Android Studio用户):

  1. 右键单击应用程序目录
  2. 选择 “模块设置” 选项
  3. 变化ADK您需要的平台
  4. 点击申请

这都是好友,Gradle会自动重建项目。

相关问题