Android JNI和NDK学习(01)-建立NDK开发环境
本文主要介绍“ JNI”,“ Android NDK”以及“如何构建Android NDK开发环境”
1 JNI介绍
从Java1.1开始,Java本机接口(JNI)标准成为Java平台的一部分,它允许Java代码和其他语言编写的代码进行交互。JNI是Java本机接口的缩写,中文为JAVA本地调用。为了本地已编译语言,尤其是C和C ++而设计的,但是它并不妨碍您使用其他语言,只要调用约定受支持就可以了。
2 NDK介绍
Android NDK,即本机开发工具包。另外
,Android程序在Dalvik虚拟机中运行,NDK允许用户使用类似的C / C ++之类的原生代码语言执行部分程序。Android的NDK是采用JNI机制实现的。
3 NDK开发环境需求
(一)linux开发环境。如ubuntu操作系统,或cygwin模拟环境;因为jni编程会用到gcc等交叉编译环境。
本文环境:ubuntu 12.04。
(二)Android应用开发环境。包括eclipse,jdk等。
本文环境:ubuntu 12.04下建造好的eclipse开发环境。
(三)Android ndk开发包。
本文环境:(ubuntu)ndk r7b版本
本文只介绍如何“ (三)Android ndk开发包”的配置。
4搭建NDK开发环境
(01)下载ndk包
可以到andorid官网下载,路径如下:
https://developer.android.google.cn/ndk/downloads/注意:要选择与操作系统匹配的ndk。例如,我的是ubuntu 12.04的32位操作系统;就选择的是Linux 32位(x86) 的ndk包。
(02)下载完毕后,解压缩;然后将ndk-build添加到环境变量中。
首先,将解压后得到的ndk-build添加到环境变量中。执行以下命令,修改环境变量配置文件.bashrc。
$ gedit〜/ .bashrc
在.bashrc中添加ndk-build的路径到PATH中,参考如下内容:
#NDK_HOME必须和ndk的路径一致!
export NDK_HOME = / home / skywang / workspace / ndk / r7b / android-ndk-r7bexport PATH = $ PATH:$ NDK_HOME
注意:/ home / skywang / workspace / ndk / r7b / android-ndk-r7b 是ndk解压之后包的完整路径,若用户下载的ndk版本或路径不同;只需更改其修改成相应的路径即可。例如,若ndk的路径是 / home / skywang / ndk / android-ndk-r9b;则设置 NDK_HOME = / home / skywang / ndk / android-ndk-r9b 即可。
配置完成之后,重新导入环境变量,通过以下命令:
$ source〜/ .bashrc
接下来,检查环境变量是否配置成功,通过以下命令:
$ ndk-build
没有输出“ ndk-build:命令未找到”,则意味着配置环境变量成功!
环境配置全部完成之后,即可开启ndk开发之旅!