前期准备:NDK开发包下载,Cmake下载;(Android studio可以下载)
此文章主讲已有项目集成Jni的操作;后期讲新建工程怎么操作(很简单);
流程步骤:
静态注册方式(我目前在用的方式)
1.创建一个java类,声明native方法,加载后面创造的so库,(库的名字可以提前取号,比如可以叫JZSDK,jni-lib等)
2.创建Jni目录,在jni目录下然后创建.cpp文件; (project:显示jni app:显示 cpp)
3.编译项目(make ,或者Rebuild)生成.clss;
4.利用javah -jni 的命令生成 对应类的.h头文件;
5.在刚刚创建cpp文件里去具体头文件里的方法(c/c++实现);
6.配置CmakeLists.txt 然后配置Gradle;
7.编译项目和 Refresh Linked c++ Projects;
8.可以实现上层调用本地方法了。
end。
1.创建java native方法(建议新建一个文件夹,单独放native相关的代码,便于维护查看); 提前把so名字想好。 加载库:static{ System.loadLibrary(“jni-lib”)};
*补充:*生成的头文件中函数的命名规则:Java_包名_类名_方法名,由于要用到包名,所以要在包括全包名的目录下执行javah命令。
#STATIC:表示静态的.a的库、 SHARED:表示.so的库。 SHARED #文件路径 src/main/jni/jni-lib.cpp )
版权声明:
本文来源网络,所有图片文章版权属于原作者,如有侵权,联系删除。
本文网址:https://www.bianchenghao6.com/h6javajc/18581.html