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++之间数据类型的转换
一、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中NDK和JNI开发基本流程
- Android的NDK开发(1)————Android JNI简介与调用流程
- (OK) Android的NDK开发(1)————Android JNI简介与调用流程
- JNI和NDK编程(二)NDK的开发流程
- Android的NDK开发(1)————Android JNI简介与调用流程
- Android的NDK开发(1)————Android JNI简介与调用流程
- Android的NDK开发(1)————Android JNI简介与调用流程
- 【转】 Android的NDK开发(1)————Android JNI简介与调用流程
- Android的NDK开发(1)————Android JNI简介与调用流程
- Android的NDK开发(1)————Android JNI简介与调用流程
- Android的NDK开发(1)————Android JNI简介与调用流程
- Android jni/NDK 开发流程(注意事项)
- Android的NDK开发(1)————Android JNI简介与调用流程
- android NDK/JNI环境配置及实例开发流程
- Android的NDK开发(1)————Android JNI简介与调用流程
- Android的NDK开发(1)————Android JNI简介与调用流程
- Android NDK开发之旅(1): Eclipse中NDK环境搭建与JNI开发流程
- JNI和NDK编程(一)JNI的开发流程
- JNI开发流程-JNI/NDK【转】
- JNI入门 NDK开发流程