J'essaie d'importer ' https://code.google.com/p/Android-serialport-api/ ' dans Android Studio. Comme ce projet implique ndk, j'ai suivi les instructions pour construire NDK à partir du lien suivant: http://tools.Android.com/tech-docs/new-build-system/gradle-experimental
Mais après la construction, j'obtiens cette erreur: Gradle Project refresh a échoué.
Erreur: cause: org.gradle.api.internal.ExtensibleDynamicObject
EDIT: J'ai la version 2.5 gradle installée Voici mon build.gradle
apply plugin: 'com.Android.model.application'
model {
Android {
compileSdkVersion 22
buildToolsVersion "22.0.1"
defaultConfig.with {
applicationId = "Android_serialport_api.sample"
minSdkVersion.apiLevel = 17
targetSdkVersion.apiLevel = 22
Android.ndk {
moduleName = "serial_port"
}
Android.buildTypes {
release {
minifyEnabled = false
proguardFiles += file('proguard-rules.txt')
}
}
Android.productFlavors {
create("all")
}
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-Android.txt'), 'proguard-rules.txt'
}
}
}
}
Pouvez-vous essayer le changement
compileSdkVersion 22
buildToolsVersion "22.0.1"
à
compileSdkVersion = 22
buildToolsVersion = "22.0.1"
et
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-Android.txt'), 'proguard-rules.txt'
}
à
release {
minifyEnabled = false
proguardFiles += file('proguard-rules.txt')
}
J'ai la même erreur et ça marche pour moi.
Malheureusement, la mise en œuvre de l'aperçu NDK pour prendre en charge le développement de code natif dans Android Studio est une cible mobile. Même si vous utilisez une version plus ancienne, developers.Android.com a déclaré, "pris en charge" la combinaison du plugin expérimental Gradle pour Android (de tools.Android.com) et de la version de Gradle (de gradle.org), bonne chance pour que la construction fonctionne. . Au lieu de cela, utilisez toujours la dernière combinaison publiée avec la dernière syntaxe de langage du module build.gradle indiquée, selon developers.Android.com.
Dans votre cas, vous mélangez l’utilisation d’opérateurs d’affectation, "=" et "+ =". En fonction de la combinaison prise en charge du plugin Gradle et de la version Gradle que vous utilisez, vous pouvez utiliser les opérateurs d’assignation partout dans le fichier build.gradle du module ou nulle part. Vous devez être cohérent, tout ou rien. Pour "+ =", utilisez plutôt la méthode ".add (...)".
Et rappelez-vous, le langage de script Gradle est compilé pour l'exécution Java. Ainsi, lorsque vous voyez une erreur de construction qui ressemble à une erreur Java, c'est probablement le script Gradle qui pose problème.
J'ai eu cette erreur quand j'ai eu un paramètre pas correctement déplacé de l'ancienne syntaxe Gradle à nouveau
(avait cFlags "..."
plutôt que CFlags += "..."
)
Regardez par exemple à http://tools.Android.com/tech-docs/new-build-system/gradle-experimental