前期准备: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://51itzy.com/kjqy/9997.html