I create a sample MoreTeapots project from https://github.com/googlesamples/android-ndk and get errors
Information: Gradle tasks [: app: assembleAllDebug]: Appendix: copyArm64-v8aDebugAllMoreTeapotsNativeActivitySharedLibraryGdbServer: Appendix: createArm64-v8aDebugAllMoreTeapotsNativeActivitySharedLibraryGdbsetup: Appendix: compileArm64-v8aDebugAllMoreTeapotsNativeActivitySharedLibraryMoreTeapotsNativeActivityMainC: Appendix: compileArm64-v8aDebugAllMoreTeapotsNativeActivitySharedLibraryMoreTeapotsNativeActivityMainCpp: Appendix: linkArm64-v8aDebugAllMoreTeapotsNativeActivitySharedLibrary: Appendix: stripSymbolsArm64-v8aDebugAllMoreTeapotsNativeActivitySharedLibrary: Appendix: arm64 -v8aDebugAllMoreTeapotsNativeActivitySharedLibrary: Application: copyArmeabi-v7aDebugAllMoreTeapotsNativeActivitySharedLibraryGdbServer: Application: createArmeabi-v7aDebugAllMoreTeapotsNativeActivitySharedLibelapativeAribetlabelabeliveibivelabelabibllivegibllivegibllivelibilabilivelibilivelibilabilivelibibllivebib itySharedLibraryMoreTeapotsNativeActivityMainC: Appendix: compileArmeabi-v7aDebugAllMoreTeapotsNativeActivitySharedLibraryMoreTeapotsNativeActivityMainCpp: Appendix: linkArmeabi-v7aDebugAllMoreTeapotsNativeActivitySharedLibrary: Appendix: stripSymbolsArmeabi-v7aDebugAllMoreTeapotsNativeActivitySharedLibrary: Appendix: armeabi-v7aDebugAllMoreTeapotsNativeActivitySharedLibrary: Appendix: copyArmeabiDebugAllMoreTeapotsNativeActivitySharedLibraryGdbServer: Appendix: createArmeabiDebugAllMoreTeapotsNativeActivitySharedLibraryGdbsetup: Appendix: compileArmeabiDebugAllMoreTeapotsNativeActivitySharedLibraryMoreTeapotsNativeActivityMainC: Appendix: compileArmeabiDebugAllMoreTeapotsNativeActivitySharedLibraryMoreTeapotsNativeActivityMainCpp: Appendix: linkArmeabiDebugAllMoreTeapotsNativeActivitySharedLibrary: Appendix: stripSymbolsArmeabiDebugAllMoreTeapotsNativeActivitySharedL ibrary: Application: armeabiDebugAllMoreTeapotsNativeActivitySharedLibrary: application: preBuild UP-TO-DATE: app: preAllDebugBuild UP-TO-DATE: Application: checkAllDebugManifest: application: prepareAllDebugDepugdendencies: app: compileAlDebugDepugdendencies: app: compileAlDebugDepugdendencies: app: compileAlDebugDepugdendencies: app: compileAlDebugDepugdendencies: app: compileAlDebugDepugdendencies: app app: generateAllDebugBuildConfig UP-TO-DATE: app: generateAllDebugAssets UP-TO-DATE: app: mergeAllDebugAssets UP-TO-DATE: app: generateAllDebugResValues UP-TO-DATE: app: generateAllDebugResources UP-TO-DgeReg: UP-TO-DATE: app: processAllDebugManifest UP-TO-DATE: app: processAllDebugResources UP-TO-DATE: app: generateAllDebugSources UP-TO-DATE: app: processAllDebugJavaRes UP-to-DATE: Application: compileAllDebugJavaWithJavac Note: Users \ Cuong \ Downloads \ MoreTeapots \ app \ src \ main \ java \ com \ sample \ moreteapots \ MoreTeapotsNativeActivity.java uses or overrides of dated API. Note. Recompilation with -Xlint: obsolescence .: Appendix for details: copyMips64DebugAllMoreTeapotsNativeActivitySharedLibraryGdbServer: Appendix: createMips64DebugAllMoreTeapotsNativeActivitySharedLibraryGdbsetup: Appendix: compileMips64DebugAllMoreTeapotsNativeActivitySharedLibraryMoreTeapotsNativeActivityMainC: Appendix: compileMips64DebugAllMoreTeapotsNativeActivitySharedLibraryMoreTeapotsNativeActivityMainCpp: Appendix: linkMips64DebugAllMoreTeapotsNativeActivitySharedLibrary: Appendix: stripSymbolsMips64DebugAllMoreTeapotsNativeActivitySharedLibrary: Appendix: mips64DebugAllMoreTeapotsNativeActivitySharedLibrary: Appendix: copyMipsDebugAllMoreTeapotsNativeActivitySharedLibraryGdbServer: Appendix: createMipsDebugAllMoreTeapotsNativeActivitySharedLibraryGdbsetup: Appendix: compileMipsDebugAllMoreTeapotsNativeActivitySharedLibraryMoreTeap otsNativeActivityMainC: Appendix: compileMipsDebugAllMoreTeapotsNativeActivitySharedLibraryMoreTeapotsNativeActivityMainCpp: Appendix: linkMipsDebugAllMoreTeapotsNativeActivitySharedLibrary: Appendix: stripSymbolsMipsDebugAllMoreTeapotsNativeActivitySharedLibrary: Appendix: mipsDebugAllMoreTeapotsNativeActivitySharedLibrary: Appendix: copyX86DebugAllMoreTeapotsNativeActivitySharedLibraryGdbServer: Appendix: createX86DebugAllMoreTeapotsNativeActivitySharedLibraryGdbsetup: Appendix: compileX86DebugAllMoreTeapotsNativeActivitySharedLibraryMoreTeapotsNativeActivityMainC: Appendix: compileX86DebugAllMoreTeapotsNativeActivitySharedLibraryMoreTeapotsNativeActivityMainCpp: Appendix: linkX86DebugAllMoreTeapotsNativeActivitySharedLibrary: Appendix: stripSymbolsX86DebugAllMoreTeapotsNativeActivitySharedLibrary: Appendix: x86DebugAllMoreTeapotsNativeActivitySharedLibr ary: Appendix: copyX86_64DebugAllMoreTeapotsNativeActivitySharedLibraryGdbServer: Appendix: createX86_64DebugAllMoreTeapotsNativeActivitySharedLibraryGdbsetup: Appendix: compileX86_64DebugAllMoreTeapotsNativeActivitySharedLibraryMoreTeapotsNativeActivityMainC: Appendix: compileX86_64DebugAllMoreTeapotsNativeActivitySharedLibraryMoreTeapotsNativeActivityMainCpp: Appendix: linkX86_64DebugAllMoreTeapotsNativeActivitySharedLibrary: Appendix: stripSymbolsX86_64DebugAllMoreTeapotsNativeActivitySharedLibrary: Appendix: x86_64DebugAllMoreTeapotsNativeActivitySharedLibrary: application: compileAllDebugSources: Appendix: preDexAllDebug: Appendix: dexAllDebug UNCERTAIN TOP-LEVEL EXCEPTION: ... when analyzing com / sample / helper / NDKHelper.class UNCERTAIN TOP LEVEL EXCLUSION: ... when analyzing com / sample / moreteapots / BuildConfig.class UNCERTAIN TOP TOP EXCLUSION: ... when analyzing com / sample / moreteapots / MoreTeapotsApplication.class UNCERTAIN TOP LEVEL EXCLUSION: ... when analyzing com / sample / moreteapots / MoreTeivityNative 1. UNCERTAINTED TOP LEVEL EXCLUSION: ... when parsing com / sample / moreteapots / MoreTeapotsNativeActivity $ 2.class UNCERTAINTED TOP LEVEL EXCEPTION: ... when parsing com / sample / moreteapots / MoreTeapotsNativeActivity $ 3.class UNCERTAINTED: . during analysis com / sample / moreteapots / MoreTeapotsNativeActivity.class UNCERTAINT TOP TOP EXCLUSION: ... when analyzing com / sample / moreteapots / R $ attr.class UNCERTAIN TOP LEVEL SUIT OPPORTUNITY: ... when analyzing com / sample / moreteapots / R $ drawable.class UNCERTAINT TOP TOP EXCLUSION: ... when analyzing com / sample / moreteapots / R $ id.class UNCERTAINT TOP TOP EXCLUSION: ... when analyzing com / sample / moreteapots / R $ layout.class UNCERTAINT TOP TOP EXCLUSION: ... when analyzing com / sample / moreteapots / R $ string.class UNCERTAINT TOP TOP EXCLUSION: ... analyzing com / sample / moreteapots / R $ style.class UNCERTAINT TOP TOP EXCLUSION: ... when analyzing com / sample / moreteapots / R.class 14 errors; discarding Error: execution completed for task ': app: dexAllDebug'. com.android.ide.common.process.ProcessException: org.gradle.process.internal.ExecException: Process 'command' C: \ Program Files \ Java \ jdk1.8.0_45 \ bin \ java.exe '' completed with- zero value of output 1 Information: BUILD FAILED Information: Total time: 4 minutes 1.033 sec. Information: 1 error Information: 0 warnings Information: see Complete output in the console
This is the guide http://tools.android.com/tech-docs/new-build-system/gradle-experimental . His application build.gradle
apply plugin: 'com.android.model.application' model { android { compileSdkVersion = 22 buildToolsVersion ="22.0.1" defaultConfig.with { applicationId = "com.sample.moreteapots" minSdkVersion.apiLevel = 11 targetSdkVersion.apiLevel = 22 } } android.ndk { moduleName ="MoreTeapotsNativeActivity" cppFlags += "-I${file("src/main/jni/cpufeatures")}".toString() cppFlags += "-I${file("src/main/jni/native_app_glue")}".toString() cppFlags += "-I${file("src/main/jni/ndk_helper")}".toString() // CFlags is configured in similiar way as cppFlags // CFlags += "-I${file("src/main/jni/native_app_glue")}".toString() ldLibs += ["android", "EGL", "GLESv2","log"] stl = "stlport_static" } android.sources { main { jni { source { srcDirs 'src/main/jni' } } } } android.productFlavors { create ("arm7") { ndk.abiFilters += "armeabi-v7a" } create ("arm8") { ndk.abiFilters += "arm64-v8a" } create ("x86-32") { ndk.abiFilters += "x86" } // for detailed abiFilter descriptions, refer to "Supported ABIs" @ // https://developer.android.com/ndk/guides/abis.html
}
His project build.gradle
// Top-level build file where you can add configuration options common to all sub-projects/modules. buildscript { repositories { maven { url "http://dl.bintray.com/android/android-tools" } jcenter() } dependencies { classpath 'com.android.tools.build:gradle-experimental:0.1.0' } } allprojects { repositories { jcenter() }
}
Its gradle -wrapper.properties
How can i decide? Thanks.
UPDATE: Resolved. I add
compileOptions.with { sourceCompatibility = JavaVersion.VERSION_1_7 targetCompatibility = JavaVersion.VERSION_1_7 }
in app build.gradle like
apply plugin: 'com.android.model.application' model { android { compileSdkVersion = 22 buildToolsVersion ="22.0.1" defaultConfig.with { applicationId = "com.sample.moreteapots" minSdkVersion.apiLevel = 10 targetSdkVersion.apiLevel = 22 } } android.ndk { moduleName ="MoreTeapotsNativeActivity" cppFlags += "-I${file("src/main/jni/cpufeatures")}".toString() cppFlags += "-I${file("src/main/jni/native_app_glue")}".toString() cppFlags += "-I${file("src/main/jni/ndk_helper")}".toString() // CFlags is configured in similiar way as cppFlags // CFlags += "-I${file("src/main/jni/native_app_glue")}".toString() ldLibs += ["android", "EGL", "GLESv2","log"] stl = "stlport_static" } android.sources { main { jni { source { srcDirs 'src/main/jni' } } } } android.productFlavors { create ("arm7") { ndk.abiFilters += "armeabi-v7a" } create ("arm8") { ndk.abiFilters += "arm64-v8a" } create ("x86-32") { ndk.abiFilters += "x86" } // for detailed abiFilter descriptions, refer to "Supported ABIs" @ // https://developer.android.com/ndk/guides/abis.html
}
source share