3

После обновления Android Studio до версии 2.0 (стабильная), синхронизация Gradle для моего проекта нарушена.Android Studio 2.0 breaks ndk build with gradle-experimental plugin

всплывающее окно Ошибка:

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 синхронизации Issue (в сообщениях просмотра):

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 

Я использую Gradle-экспериментальный плагин (classpath 'com.android.tools.build:gradle-experimental:0.6.0-alpha5') для НДК сборки, как это имеет рекомендуется, например here, таким образом, мой build.gradle выглядит следующим образом (с com.android.model.application плагин), и я не могу просто «обновление» в 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' 
} 

Все, что я мог бы найти по вопросам с Android Studio 2.0 была о канарейки/бета-версии и, похоже, имеет разные проблемы, чем эта. Перед обновлением синхронизация Gradle работала должным образом. (Я использую последнюю стабильную сборку, 1.5.1 я думаю?).

Я надеюсь на некоторые идеи о том, как использовать ndk с Android Studio 2.0.

ответ

2

Использование Gradle-экспериментальный: 0.7.0-альфа1 установил синхронизацию Gradle для меня: classpath 'com.android.tools.build:gradle-experimental:0.7.0-alpha1'

+0

Я получаю: Ошибка: Не удалось найти com.android.tools.build:gradle-experimental:0.7.0-alpha1. ошибка. Должен ли я также меняться в другом месте? – jclova

+0

вам нужно только изменить его в файле build.gradle –

0

Использования следующего за исправил классы вопроса для меня.

classpath 'com.android.tools.build:gradle-experimental:0.7.0' 
Смежные вопросы