type
status
date
slug
summary
tags
category
icon
password
一、JNI
作用:用于java代码和C++、c代码的交互(代码混编)。
分类使用:Jni静态注册、jni动态注册
二、静态注册
1、定义被native修饰的方法
2、根据java代码生成.h头文件(javah -jni 类的包名路径)
3、编写C/C++代码,导入.h头文件,实现我们.h头文件中方法
4、编写(配置)两个mk文件:application.mk/android.mk
5、通过ndk-build生成so文件
6、java代码中加载so文件/libs文件下去头去尾(头:lib;尾:.so)
7、build.gradle文件配置
8、main创建jniLibs文件夹将so文件复制
三、动态注册
1、.c文件编写JNI_OnLoad
FindClass处填写对应类
2、.c文件定义方法结构体
3、.c文件对应C函数
4、java代码逻辑
四、SO库获取java层字段值
五、SO库调用JAVA函数
- 作者:404False
- 链接:https://blog.404nofoundx.top//article/5e0641c5-ba62-4f79-bca1-a6057c1e8fa1
- 声明:本文采用 CC BY-NC-SA 4.0 许可协议,转载请注明出处。