11

文档声称build.gradle这样的作品:

android {
  compileSdkVersion 'android-N'
  buildToolsVersion 24.0.0
  ...

  defaultConfig {
     minSdkVersion 'N'
     targetSdkVersion 'N'
     ...
  }
  ...
}

这给了我failed to find Build Tools revision 24.0.0,当'com.android.tools.build:gradle:1.5.0'用于 Gradle 和 Gradle 2.5 的 Android 插件时。

如果我查看build-tools/我的 Android SDK 安装,我会看到24.0.0-preview,而不是24.0.0. 但是,如果我切换build.gradle到使用buildToolsVersion "24.0.0-preview",我会得到Invalid revision: 24.0.0-preview.

那么,什么样的build.gradle值组合可以构建一个针对 N Developer Preview SDK 进行编译的项目呢?

4

5 回答 5

4

基于示例应用程序之一,我现在正在使用:

  • 摇篮 2.10
  • 'com.android.tools.build:gradle:2.1.0-alpha1'适用于 Gradle 的 Android 插件(位于您的顶级build.gradle文件中)
  • buildToolsVersion "24.0.0 rc1"

这似乎一直存在,包括 Android Studio 1.5.1。

更新:现在 N Developer Preview 4 已经发布,我们可以开始使用and24代替:"N""android-N"

android {
    compileSdkVersion 24
    buildToolsVersion "24.0.0"

    defaultConfig {
        minSdkVersion 24
        targetSdkVersion 24
    }
}
于 2016-03-10T17:44:56.653 回答
3

我相信问题是因为使用buildToolsVersion 24.0.0.

根据官方设置指南,使用:

  compileSdkVersion 'android-N'
  buildToolsVersion '24.0.0 rc1'

  defaultConfig {
    minSdkVersion 'N'
    targetSdkVersion 'N'
    ...
  }

请注意,minSdkVersion除“N”外也可以,但无论如何您都必须使用“N”设备来运行您的应用程序。

Gradle 2.4对我有用。此外,您不必使用预览示例中提到的'com.android.tools.build:gradle:2.1.0-alpha1'。使用也有效。classpath 'com.android.tools.build:gradle:1.5.0'

 dependencies {
     classpath 'com.android.tools.build:gradle:1.5.0'
     ...
 }

不要忘记获取 Java 8 JDK 和 JRE。需要使其在“N”上工作,但如果不使用 Java 8 功能,您可以sourceCompatibility JavaVersion.VERSION_1_7设置targetCompatibility JavaVersion.VERSION_1_7

注意:开发面向 Android N 平台的应用程序不需要使用新的 Java 8 语言功能。如果您不想使用 Java 8 语言功能编写代码,您可以将项目的源代码和目标兼容性值设置为 Java 7,但您仍然必须使用 JDK 8 编译才能针对 Android N 平台进行构建。

检查Java 8 语言功能以获取详细信息。

于 2016-03-14T14:16:10.490 回答
1

在一个带有 PixelC 的新项目中,我似乎在这个配置上运行得很好:

android {
    compileSdkVersion 'android-N'
    buildToolsVersion '24.0.0 rc4'

    lintOptions {
        abortOnError false
    }


    defaultConfig {
        minSdkVersion 'N'
        targetSdkVersion 'N'

        jackOptions {
            enabled true
        }
    }

    compileOptions {
        sourceCompatibility JavaVersion.VERSION_1_8
        targetCompatibility JavaVersion.VERSION_1_8
    }

...
}
于 2016-05-20T18:56:42.883 回答
0

基于您必须使用的示例项目

android {
    compileSdkVersion 'android-N'
    buildToolsVersion '24.0.0 rc1'

    defaultConfig {
        applicationId "com.android.multiwindowplayground"
        minSdkVersion 'N'
        targetSdkVersion 'N'
  ....

    }

    compileOptions {
        sourceCompatibility JavaVersion.VERSION_1_7
        targetCompatibility JavaVersion.VERSION_1_7
    }
}
  • Android Studio 2.1 预览版
  • 使用 gradle-2.10-all.zip
  • com.android.tools.build:gradle:2.1.0-alpha1适用于 Gradle 的 Android 插件(位于您的顶级build.gradle文件中)
  • buildToolsVersion "24.0.0 rc1"
  • 选择N:Android API 23,N Preview(预览)。它为我工作。
于 2016-03-10T17:57:38.840 回答
0

问题是您不能将 minSdkVersionless 设置为“N”。如果你放了一个较小的版本,或者收到错误,或者只去 +23 设备。

于 2016-03-10T18:43:40.740 回答