android studio使用jni ndk会出现的问题

本文介绍了在Android项目中集成包含本地方法库时遇到的问题及解决方案。主要涉及配置gradle.properties和build.gradle文件来解决找不到NDK及编译错误等问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

当我们在开发时需要用到包含本地方法的库时,需要用ndk,会出现下列问题

1.可能会出现找不到ndk:

Error:Execution failed for task ':serialPortLibrary:compileReleaseNdk'.
> Error: Your project contains C++ files but it is not using a supported native build system.
Consider using CMake or ndk-build integration with the stable Android Gradle plugin:
 https://developer.android.com/studio/projects/add-native-code.html
or use the experimental plugin:
 http://tools.android.com/tech-docs/new-build-system/gradle-experimental.

解决办法:在项目的gradle.properties文件中加入这句

android.useDeprecatedNdk=true

2.加入上面一句时还可能报下列错误

Error:Execution failed for task ':serialPortLibrary:compileReleaseNdk'.
> com.android.ide.common.process.ProcessException: Error while executing 'E:\\ndk\\android-ndk-r10d\\android-ndk-r10d\\ndk-build.cmd' with arguments {NDK_PROJECT_PATH=null APP_BUILD_SCRIPT=F:\\androidstudioworkspace\\LearnTones\\serialPortLibrary\\build\\intermediates\\ndk\\release\\Android.mk APP_PLATFORM=android-19 NDK_OUT=F:\\androidstudioworkspace\\LearnTones\\serialPortLibrary\\build\\intermediates\\ndk\\release\\obj NDK_LIBS_OUT=F:\\androidstudioworkspace\\LearnTones\\serialPortLibrary\\build\\intermediates\\ndk\\release\\lib APP_ABI=all}

解决方法:在你导入的包含jni的库的build.gradle文件中加入这句

sourceSets.main {
    jni.srcDirs = []
}
注意是在android{  ...  }之间加即...的地方加,问题就可以解决了,自己踩过的坑,希望可以帮到你

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值