N Developer Preview 的正确项目配置是什么?
What Is the Proper Project Configuration for the N Developer Preview?
文档声称 build.gradle
像这样工作:
android {
compileSdkVersion 'android-N'
buildToolsVersion 24.0.0
...
defaultConfig {
minSdkVersion 'N'
targetSdkVersion 'N'
...
}
...
}
当 'com.android.tools.build:gradle:1.5.0'
用于 Gradle 和 Gradle 2.5 的 Android 插件时,这给了我 failed to find Build Tools revision 24.0.0
。
如果我在我的 Android SDK 安装中查看 build-tools/
,我会看到 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 进行编译?
基于one of the sample apps,我现在使用:
- Gradle 2.10
'com.android.tools.build:gradle:2.1.0-alpha1'
用于 Android 插件 Gradle(进入顶级 build.gradle
文件)
buildToolsVersion "24.0.0 rc1"
这似乎是有效的,包括 Android Studio 1.5.1。
更新:现在 N Developer Preview 4 已经发布,我们可以开始使用 24
代替 "N"
和 "android-N"
:
android {
compileSdkVersion 24
buildToolsVersion "24.0.0"
defaultConfig {
minSdkVersion 24
targetSdkVersion 24
}
}
基于Sample project你必须使用
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
用于 Android 插件
对于 Gradle(进入您的顶级 build.gradle 文件)
- buildToolsVersion“24.0.0 rc1”
- SelectN:AndroidAPI23、N预览(Preview)。
它对我有用。
问题是你不能把minSdkVersion设置得低于"N"。
如果你放一个较小的版本,或者收到错误,或者只去 +23 设备。
我认为问题是因为使用 buildToolsVersion 24.0.0
。
根据official set up guide,使用:
compileSdkVersion 'android-N'
buildToolsVersion '24.0.0 rc1'
defaultConfig {
minSdkVersion 'N'
targetSdkVersion 'N'
...
}
请注意,'N' 以外的 minSdkVersion
也可以正常工作,但无论如何您都必须使用 'N' 设备才能 运行 您的应用程序。
Gradle 2.4 适合我。此外,您不必像预览 samples 中提到的那样使用 '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
。
Note: Using the new Java 8 language features is not a requirement for developing apps that target the Android N platform. If you don't want to write code with Java 8 language features, you can keep your project's source and target compatibility values set to Java 7, but you still must compile with JDK 8 to build against the Android N platform.
查看 Java 8 Language Features 了解详情。
我似乎在使用 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
}
...
}
文档声称 build.gradle
像这样工作:
android {
compileSdkVersion 'android-N'
buildToolsVersion 24.0.0
...
defaultConfig {
minSdkVersion 'N'
targetSdkVersion 'N'
...
}
...
}
当 'com.android.tools.build:gradle:1.5.0'
用于 Gradle 和 Gradle 2.5 的 Android 插件时,这给了我 failed to find Build Tools revision 24.0.0
。
如果我在我的 Android SDK 安装中查看 build-tools/
,我会看到 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 进行编译?
基于one of the sample apps,我现在使用:
- Gradle 2.10
'com.android.tools.build:gradle:2.1.0-alpha1'
用于 Android 插件 Gradle(进入顶级build.gradle
文件)buildToolsVersion "24.0.0 rc1"
这似乎是有效的,包括 Android Studio 1.5.1。
更新:现在 N Developer Preview 4 已经发布,我们可以开始使用 24
代替 "N"
和 "android-N"
:
android {
compileSdkVersion 24
buildToolsVersion "24.0.0"
defaultConfig {
minSdkVersion 24
targetSdkVersion 24
}
}
基于Sample project你必须使用
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
用于 Android 插件 对于 Gradle(进入您的顶级 build.gradle 文件)- buildToolsVersion“24.0.0 rc1”
- SelectN:AndroidAPI23、N预览(Preview)。 它对我有用。
问题是你不能把minSdkVersion设置得低于"N"。 如果你放一个较小的版本,或者收到错误,或者只去 +23 设备。
我认为问题是因为使用 buildToolsVersion 24.0.0
。
根据official set up guide,使用:
compileSdkVersion 'android-N'
buildToolsVersion '24.0.0 rc1'
defaultConfig {
minSdkVersion 'N'
targetSdkVersion 'N'
...
}
请注意,'N' 以外的 minSdkVersion
也可以正常工作,但无论如何您都必须使用 'N' 设备才能 运行 您的应用程序。
Gradle 2.4 适合我。此外,您不必像预览 samples 中提到的那样使用 '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
。
Note: Using the new Java 8 language features is not a requirement for developing apps that target the Android N platform. If you don't want to write code with Java 8 language features, you can keep your project's source and target compatibility values set to Java 7, but you still must compile with JDK 8 to build against the Android N platform.
查看 Java 8 Language Features 了解详情。
我似乎在使用 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
}
...
}