NDK函数命名规范native method not found(给函数命名喜欢用_分割的同学们)

错误方式:

 包名com.test.hello

 类名Hello

 函数名:public static native String  Get_Name();//主要是下划线导致的问题

使用JavaH 生成的ni函数名:Java_com_test_hello_Hello_Get_Name();

然后在java中调用改函数回导致:native method not found错误。

正确方式:

   函数名:public static native String  GetName();//去掉下划线

使用JavaH 生成的ni函数名:Java_com_test_hello_Hello_GetName();

然后在java中调用改函数会正常执行。

原因是NDK根据下划线分割报名、类名、函数名。

Java_com_test_hello_Hello_Get_Name();这个NDK会划分为包名:com.test.hello.Hello,类名Get,函数名:Name。

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Android NDK (Native Development Kit) 是一套工具包,它允许开发者使用 C、C++ 等编写的原生代码与 Android 应用程序进行交互。当你在 Android 开发过程中遇到 "NDK not found" 错误,通常意味着系统找不到 Android NDK 的安装路径,或者 NDK 未正确配置。 可能的原因包括: 1. **未安装或路径错误**:检查是否已经安装了 NDK,若已安装,确认 ANDROID_NDK_HOME 环境变量设置的路径是否正确,这是 Android Studio 或其他构建工具查找 NDK 的依据。 2. **NDK 版本不兼容**:确保使用的 NDK 版本与你的项目或工具兼容,旧版本的 NDK 可能无法支持某些新功能。 3. **环境变量问题**:在系统的PATH环境变量中没有包含 NDK 的 bin 目录,导致工具无法找到。 4. **配置文件错误**:特别是在使用 Gradle 或 CMake 构建时,检查 build.gradle 或 CMakeLists.txt 文件中的 NDK 相关配置是否正确。 解决步骤: 1. **检查安装**:确保你已经从 Android 官方网站下载并安装了最新版本的 NDK。 2. **更新环境变量**:添加 NDK 的 bin 目录到系统的 PATH 环境变量。 3. **配置构建脚本**:在项目构建文件中设置正确的 NDK 工作目录和版本。 4. **重启工具**:关闭并重新打开 Android Studio 或其他开发工具,确保它们能够识别新的 NDK 设置。 如果你需要更详细的步骤,可以提供具体的错误信息或环境配置,以便我能给出更准确的指导。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值