Error:Execution failed for task ':app:compileDebugNdk'.
表示gradle android插件正在尝试调用ndk-build本身来编译您的源代码。您应该获得比日志窗口中的错误代码更多的详细信息。
无论如何,当前它使用自动生成的Makefile来执行此 *** 作,并且忽略您的Makefile,这是行不通的,因为您需要集成ffmpeg。
为了克服这个问题,您应该禁用插件的自动ndk集成,并使其使用标准 库 位置来获取您的.so文件:
sourceSets.main { jniLibs.srcDir 'src/main/libs' jni.srcDirs = [] //disable automatic ndk-build call}
从那里,您可以自己调用 ndk-build ,也可以通过gradle为您调用:
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}
有关为什么所有这些的更多信息,您可以查看本要点和我的博客文章。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)