' https://code.google.com/p/Android-serialport-api/ ' into Android Studio。このプロジェクトにはndkが含まれるため、 、私は次のリンクからNDKをビルドするための指示に従いました: http://tools.Android.com/tech-docs/new-build-system/gradle-experimental
しかし、ビルド後、次のエラーが表示されます:Gradleプロジェクトの更新に失敗しました
エラー:原因:org.gradle.api.internal.ExtensibleDynamicObject
編集:私は2.5 Gradleバージョンをインストールしていますここに私の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'
}
}
}
}
変更してみてください
compileSdkVersion 22
buildToolsVersion "22.0.1"
に
compileSdkVersion = 22
buildToolsVersion = "22.0.1"
そして
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-Android.txt'), 'proguard-rules.txt'
}
に
release {
minifyEnabled = false
proguardFiles += file('proguard-rules.txt')
}
同じエラーが発生しましたが、これでうまくいきます。
残念ながら、Android Studioでのネイティブコード開発をサポートするNDKプレビュー実装は、動くターゲットです。旧式のdeveloper.Android.comを使用していても、試験的なAndroid Gradleプラグイン(tools.Android.comから)とGradleバージョン(gradle.orgから)の「サポートされている」組み合わせ、幸運ビルドを機能させるために。代わりに、developers.Android.comによると、常に最新のリリースされた組み合わせと、示された最新のモジュールbuild.gradle言語構文を使用してください。
あなたのケースでは、代入演算子「=」と「+ =」を混在させて使用しています。使用しているGradleプラグインとGradleバージョンのサポートされる組み合わせに応じて、モジュールbuild.gradleファイル内のどこにでも代入演算子を使用するか、どこにも使用しないでください。一貫性がある必要があります。 「+ =」の場合は、代わりにメソッド「.add(...)」を使用してください。
そして、gradleスクリプト言語はJavaランタイムにコンパイルされるので、Javaエラーのようなビルドエラーが表示される場合は、gradleスクリプトが問題である可能性があります。
古いgradle構文から新しいgradle構文に正しく移動されていないパラメーターがあると、このエラーが発生しました
(持っていました cFlags "..."
のではなく CFlags += "..."
)
見てください。 http://tools.Android.com/tech-docs/new-build-system/gradle-experimental