您的位置:首页 > 移动开发 > Android开发

JNI与NDK的开发流程

2016-09-14 14:56 246 查看

一、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++之间数据类型的转换
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  Android java jni ndk