Android Studio认为我正在构建API Level 1而不是Android L。

7

首先,我的应用程序的 gradle.build 文件:

apply plugin: 'com.android.application'

android {
    compileSdkVersion 'android-L'
    buildToolsVersion '20.0.0'

    defaultConfig {
        applicationId "com.blah.blah"
        minSdkVersion 16
        targetSdkVersion 'L'
        versionCode 1
        versionName "alpha"
    }
    ...
}

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    compile 'com.android.support:support-v4:21.+'
    compile 'com.android.support:appcompat-v7:21.0.+'
    compile 'com.google.android.gms:play-services:5.0.77'
    compile 'com.koushikdutta.ion:ion:1.2.4'
}

无论如何,我有一个由Android Studio自动生成的导航抽屉Fragment,它的所有生命周期方法(onAttach(), onDetach(), onCreate()等)都会抛出错误"This method is not overriding anything with the current build target, but will in API level 11 (current target is 1):"。在Android Studio生成它后,我没有修改过该片段的源代码。这是为什么?我该如何解决这个问题?

3
我也遇到了同样的问题。但我可以成功地构建和运行这个项目。 - Benito Bertoli
2个回答

1
首先:您是否正在使用最新的Android Studio版本(0.8.2)?
其次,当您想要为Android L开发者预览版构建应用程序时,必须在gradle.build文件中设置以下值:
compileSdkVersion 'android-L'
minSdkVersion 'L'
targetSdkVersion 'L'

所以,请修复您的minSdkVersion!

Source: https://developer.android.com/preview/setup-sdk.html#createProject


1

确实需要在预览中使用minSdkVersion 'L',如Araks所指出的

但这也是一个错误,这里有一个解决方法 在Android L上使用Fragments时的Lint错误:“此方法未覆盖任何内容”

刚刚发生在我身上,我的版本是正确的,正在寻找另一种解决方案...

编辑: Niek Haarman使用minSdkVersion并说: 构建时自动将minSdkVersion设置为“L”,以避免发布具有预览功能的应用程序。 在L预览版上使用Material主题

有关解决方法的更多信息: http://www.reddit.com/r/androiddev/comments/2964nb/for_those_of_you_having_problems_building_with/


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接