JNI 与 NDK
来源:互联网 发布:iphone连接电脑软件 编辑:程序博客网 时间:2024/06/09 17:12
JNI 与 NDK
一、前言
JNI是Java调用Native机制,全称为 Java Native Interface,是Java 语言的特性,换句话说JNI和Android没有关
系,在PC上开发Java的应用,如果运行在Windows平台使用 JNI是是经常的,比如说读写Windows的注册表。
另外,NDK多了一个把.so和.apk打包的工具而JNI开发并没有打包,只是把.so文件放到文件系统的特定位置。(这个也是相当重要的)
二、为什么要使用NDK
(1)代码的保护
由于apk的java层代码很容易被反编译,而C/C++库反汇难度较大。
(2)可以方便地使用现存的开源库
大部分现存的开源库都是用C/C++代码编写的。
(3)提高程序的执行效率
将要求高性能的应用逻辑使用C开发,从而提高应用程序的执行效率。
(4)便于移植
用C/C++写的库可以方便在其他的嵌入式平台上再次使用。
NDK的这个特性既有利于代码的重用,也可以在某种程度上提高程序运行的效率
三、JNI native方法实现步骤
(1)在Java中声明native()方法,然后编译(javac);
(2)用javah产生一个.h文件;
(3)编写包含.h文件的c文件
(4)编译c文件
(5)使用编译成功的so文件。
四、使用NDK 编写代码步骤
(1)编写Java代码
(2)编写相应的C/C++代码
生成相应的.h文件
编写相应的.c文件
(3)编译xx-jni.c 生成相应的库
编写Android.mk文件
生成.so共享库文件
(4)重新编译XXJni工程,生成apk
0 0
- NDK与JNI
- [4] JNI 与 NDK
- JNI与NDK
- JNI 与 NDK
- JNI与NDK
- JNI与NDK
- JNI与NDK
- Android NDK Hello + JNI 与 NDK区别
- 【NDK开发】JNI与NDK关系
- android NDK开发之NDK与JNI
- Android NDK 与 Java JNI
- NDK 与 JNI 的关系
- NDK 与 JNI 的关系
- NDK 与 JNI 的关系
- NDK 与 JNI 的关系
- NDK 与 JNI 的关系
- NDK 与 JNI 的关系
- 安卓 NDK与JNI
- Android UI 之ToggleTextView的妙用(自定义可切换TextView)
- mysql备份之xtrabackup
- openssl安装和使用总结
- [Phonegap+Sencha Touch] 移动开发62 使用GapDebug调试Phonegap/Cordova应用
- 八大种必知排序算法(三) 归并排序算法、堆排序算法详解
- JNI 与 NDK
- Timer和TimerTask在Android中的用法
- Android:继承ImageView 实现 圆角图片,圆形图片处理。
- VS2013导出的环境不能导入到VS2012中【解决方案】
- android 仿QQ好友动态 title滑动渐变
- Python基础学习笔记之二
- Linux apache+php+mysql
- 八大种必知排序算法(三) 归并排序算法、堆排序算法详解 (续)
- submit禁止提交的几种方式