首页 > 系统 > Android > 正文

Android Studio NDK build 时的错误处理

2019-11-09 18:31:25
字体:
来源:转载
供稿:网友

Android Studio项目中包含jni文件时,编译会遇到

Error:Execution failed for task ':app:compileDebugNdk'.

这是因为gradle android plugin试图自己去调用ndk-build来编译项目中的源文件,而且会忽略项目中的Makefile文件使用自动生成的Makefile。

为了避免自动调用ndk-build来编译jni,需在app/build.gradle中加入以下代码:

sourceSets.main {    jniLibs.srcDir 'src/main/libs'    jni.srcDirs = [] //disable automatic ndk-build call}#手动调用ndk-build来编译jni

import org.apache.tools.ant.taskdefs.condition.Os// call regular ndk-build(.cmd) script from app directorytask 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    }}tasks.withType(javaCompile) {    compileTask -> compileTask.dependsOn ndkBuild}


发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表