NDK开发简介
记录一些NDK开发的基础问题,这里记录的方向会更偏向于逆向、安全方面的内容。
什么是NDK
JNI:Java Native Interface的缩写,JAVA本地接口的意思
NDK:Native Development Kit(本地开发套件)
- 可以帮助开发人员快速开发、调试动态库
JNI函数
JNI是一个规范
- 有时候需要编译后保留函数名可以加上extern ”C”,使其按C的方式进行编译
JNI参数
静态函数和动态函数实现的时候第二个传参是不同的
静态成员可以直接通过类名的方式访问调用,非静态函数是不行的
- 通过对参数的分析,我们可以知道一个JNI函数它的参数一定是不少于两个的,从第三个参数开始才是属于函数自己的参数
调用
在调用C文件中的函数的时候要显式的加上extern “C”
- 因为如果不加的话编译器会默认按C++的方式进行编译,在函数名称粉碎之后就链接不到了。
变量类型
在前面加上 j
测试
执行成功:测试的时候注意一下系统版本
- debug调试要注意设备版本跟项目SDK版本保持一致,不然会报错
- 标题: NDK开发简介
- 作者: xiaoeryu
- 创建于 : 2023-10-03 09:04:30
- 更新于 : 2023-10-06 12:27:23
- 链接: https://github.com/xiaoeryu/2023/10/03/NDK开发简介/
- 版权声明: 本文章采用 CC BY-NC-SA 4.0 进行许可。
评论