JNI与NDK的开发流程


一、JNI开发流程
1、在java中声明native方法(编写java程序)
2、通过javac编译java源文件得到class文件
3、通过javah命令针对class文件生成JNI头文件
4、实现JNI方法(编写相应的c/c++文件)
5、采用gcc等编译工具编译c/c++文件生成so库
6、将so库放到相应位置,System.loadLibary("so库")加载so库,ava程序就可以使用c/c++中 的native方法了

二、NDK开发流程
1、配置NDK环境,下载NDK,并配置到环境变量中,AS的话直接下载使用就行了
2、在java中声明native方法,编写java程序(跟JNI中的一样的)
3、在jni文件夹中分别实现JNI方法(一般是JNI头文件与c/c++文件写在一起)、Android.mk、Application.mk(jni文件夹可以与应用程序无关)
4、在jni文件夹的父目录执行ndk-build就可以生成libs文件夹(里面就是so库)
5、要用的就是so库,在应用程序app/src/main下建一个jniLibs并导入相应的so库,java程序就可以调用相应的c/c++方法了
以上是手动使用NDK的方法,如果要用AS来用的话,需要对App的build.gradle进行配置(配置jni模块名、jni文件夹位置、配置CPU平台等)

注意:JNI开发中比较关键的就是java与c/c++之间数据类型的转换

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值