Android-JNI之相关概念
Android-JNI-相关概念
JNI概念
- JNI 全称为Java Native Interface,即Java本地接口,JNI是Java调用Native 语言的一种特性,通过JNI可以使得Java与C/C++进行交互。
JNI的本质是原本用JAVA代码实现的功能要用C/C++去完成,并得到正确的数据结果,所以JNI的核心应该是JAVA的数据类型与JNI的数据类型的转换
NDK概念
- NDK 全称 Native Develop Kit 翻译为 本地开发工具集合,允许通过JAVA语言调用C或者C++语言完成部分功能
- Android NDK 是一组使您能将 C 或 C++(“原生代码”)嵌入到 Android 应用中的工具。
为什么使用JNI进行软件开发
- 方便在平台间移植应用
- 重复使用现在的库
- 提高性能,比如一些游戏的密集型计算
- 使用第三方库现在许多第三方库都是由C/C++库编写的,比如Ffmpeg这样库
- 关键代码保护JAVA代码容易进行破解,C/C++反编难度大
资料参考
Android JNI(一)——NDK与JNI基础
Android NDK开发(一) 入门
Android JNI专题
Android JNI详解
Android JNI入门到精通
Android开发实践:Java层与Jni层的数组传递
JNI jstring与c++字符串类型转换函数
整理JNI常量函数,用例说明
Android JNI层实现文件的read、write与seek操作
Android开发之jni串口