Android Studio 1.1.0不推荐使用NDK支持

JGP*_*lip 6 android-ndk android-studio

目前正在运行Android Studio 1.1.0.安装NDK并添加指向build.gradle文件的链接.构建项目将提供以下文本的跟踪.

WARNING [Project: :app] Current NDK support is deprecated.  Alternative will be provided in the future.

android-ndk-r10d\ndk-build.cmd'' finished with non-zero exit value 1
Run Code Online (Sandbox Code Playgroud)

Android Studio不支持NDK r10d吗?

ph0*_*h0b 10

当前的NDK支持仍然适用于简单项目(即不依赖于其他NDK预构建库的C/C++源代码),包括使用最新的r10d NDK时.

但它确实有限,正如警告所说,它已被弃用,是的.

我建议做的是简单地停用它,并直接调用ndk-build.通过这种方式,您可以保留经典的Android.mk/Application.mk配置文件,并从项目中调用ndk-build仍然可以与eclipse项目相同:

import org.apache.tools.ant.taskdefs.condition.Os

...

android {  
  ...
  sourceSets.main {
        jniLibs.srcDir 'src/main/libs' //set .so files location to libs instead of jniLibs
        jni.srcDirs = [] //disable automatic ndk-build call
    }

    // add a task that calls regular ndk-build(.cmd) script from app directory
    task ndkBuild(type: Exec) {
        if (Os.isFamily(Os.FAMILY_WINDOWS)) {
            commandLine 'ndk-build.cmd', '-C', file('src/main').absolutePath
        } else {
            commandLine 'ndk-build', '-C', file('src/main').absolutePath
        }
    }

    // add this task as a dependency of Java compilation
    tasks.withType(JavaCompile) {
        compileTask -> compileTask.dependsOn ndkBuild
    }
}
Run Code Online (Sandbox Code Playgroud)