After updating Android Studio to version 2.0 (stable), the Gradle sync for my project is broken.
Error popup:
Android Gradle Plugin Update Required
The project is using an incompatible version of the Android Gradle plugin.
To configure the project, the IDE will update the Android Gradle Plugin to version 2.0.0.
You can learn more about this version of the plugin from this [release notes][1].
-> Update -> Cancel and update manually
Gradle Sync Issue (in the messages view):
Error:The project is using an incompatible version of the Android Gradle plugin.
Please update your project to use version 2.0.0.
-> Search in build.gradle files
I'm using the gradle-experimental plugin ( classpath 'com.android.tools.build:gradle-experimental:0.6.0-alpha5'
) for the ndk build as it has been recommended, eg here , thus my build.gradle looks like this (with the com.android.model.application
plugin) and I cannot simply 'update' to classpath 'com.android.tools.build:gradle:2.0.0'
:
apply plugin: 'com.android.model.application'
def superpowered_path = file('.').absolutePath + "/src/main/jni/Superpowered"
model {
repositories {
libs(PrebuiltLibraries) {
superpowered {
headers.srcDir "${superpowered_path}"
binaries.withType(StaticLibraryBinary) {
staticLibraryFile = file("${superpowered_path}/lib/${targetPlatform.getName()}/libSuperpoweredAndroid.a")
}
}
}
}
android {
compileSdkVersion 23
buildToolsVersion "23.0.3"
defaultConfig {
applicationId "APPID"
minSdkVersion.apiLevel 15
targetSdkVersion.apiLevel 23
versionCode 1
versionName "1.0"
archivesBaseName = "APPNAME-$versionCode-$versionName"
renderscriptTargetApi 20
renderscriptSupportModeEnabled true
}
buildTypes {
release {
minifyEnabled false
proguardFiles.add(file('proguard-rules.pro'))
signingConfig = $("android.signingConfigs.releaseSigning")
}
debug {
applicationIdSuffix ".debug"
versionNameSuffix "-DEBUG"
signingConfig = $("android.signingConfigs.debugSigning")
}
}
sources {
main {
jni {
dependencies {
library "superpowered" linkage "static"
}
}
}
}
/*
* native build settings
*/
ndk {
moduleName = "NDKMODULE-jni"
cppFlags.add("-std=c++11")
ldLibs.addAll(["android", "log", "OpenSLES"])
abiFilters.addAll(["armeabi-v7a", "x86", "arm64-v8a"])
}
}
android.signingConfigs {
create("releaseSigning") {
keyAlias 'release'
keyPassword 'PASSWORD'
storeFile file('KEYSTORE.jks')
storePassword 'PASSWORD'
storeType "jks"
}
create("debugSigning") {
keyAlias 'debug'
keyPassword 'PASSWORD'
storeFile file('KEYSTORE.jks')
storePassword 'PASSWORD'
storeType "jks"
}
}
}
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar', '*.a'])
testCompile 'junit:junit:4.12'
// Android support libs
compile 'com.android.support:appcompat-v7:23.2.1'
compile 'com.android.support:design:23.2.1'
compile 'com.android.support:support-v4:23.2.1'
compile 'com.android.support:recyclerview-v7:23.2.1'
// Android Async Http
// Apache 2.0 http://loopj.com/android-async-http/
compile 'com.loopj.android:android-async-http:1.4.9'
// OkHttp http://square.github.io/okhttp/
// Apache v2
compile 'com.squareup.okhttp3:okhttp:3.2.0'
// Picasso http://square.github.io/picasso/
// Apache v2
compile 'com.squareup.picasso:picasso:2.5.2'
// Retrofit http://square.github.io/retrofit/
// Apache v2
compile 'com.squareup.retrofit2:retrofit:2.0.0-beta4'
}
All I could find on issues with Android Studio 2.0 was about the canary / beta builds and seems to have different problems than this one. Before the update, the Gradle sync worked as expected. (I've been using the last stable build, 1.5.1 I think?).
I'm hoping for some ideas on how to use the ndk with Android Studio 2.0.
使用gradle-experimental:0.7.0-alpha1为我修复了Gradle同步: classpath 'com.android.tools.build:gradle-experimental:0.7.0-alpha1'
:gradle-experimental:0.7.0-alpha1 classpath 'com.android.tools.build:gradle-experimental:0.7.0-alpha1'
使用以下类路径修复了我的问题。
classpath 'com.android.tools.build:gradle-experimental:0.7.0'
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.