JNI是Java Native Interface的缩写,通过JNI可以方便我们在Android平台上进行C/C++编程。要用JNI首先必须安装Android的NDK,配置好NDK环境之后就可以在Eclipse下进行C/C++开发了。
1:安装ndk
该文件夹就用来保存NDK需要编译的文件代码等。
3,新建一个Builders,
Project->Properties->Builders->New,新建一个Builder。
(b)在弹出的【Choose configuration type】对话框,选择【Program】,点击【OK】:
(c)在弹出的【Edit Configuration】对话框中,配置选项卡【Main】。
在“Name“中输入新builders的名称(这个名字可以任意取)。
这个是下载完ndk8后解压后的路径,这个建议放在根目录下面,路径不能有空格和中文)。根据各自的ndk路径设置,也可以点击“Browser File System…”来选取这个路径。
在“Working Diretcoty”中输入TestNdk位置(也可以点击“Browse Workspace”来选取TestNdk目录)。如图1
图1
(d)继续在这个【Edit Configuration】对话框中,配置选项卡【Refresh】。如图2
勾选“Refresh resources upon completion”,
勾选“The entire workspace”,
勾选“Recuresively include sub-folders”。
图2
(e)继续在【Edit Configuration】对话框中,配置选项卡【Build options】。
勾选“After a “Clean””,(勾选这个操作后,如果你想编译ndk的时候,只需要clean一下项目 就开始交叉编译)
勾选“During manual builds”,
勾选“During auto builds”,
勾选“Specify working set of relevant resources”。如图3
图3
新建的“jni“目录,点击”finish“。 点击“OK“,完成配置。 如图4
图4
到此,恭喜你,编译环境以及成功搭建完毕!
创建一个JNI接口类,该Java类提供一个运算的接口,这里的函数声明一定要加native修饰
编译JNI:将TestJNI.java文件复制到工程的Testndk文件下,在终端中进入该目录,输入javac TestJNI.java,这时会生成一个TestJNI.class文件。
定位到E:\EclipseProjects\TestNDK2\bin\classes目录,
生成头文件,将其拷贝到jni文件夹下。
生成Android.mk
右键工程-Android Tools-Add native support,填入动态编译后.so文件的名称。
编写c文件
保存,自动编译