NDK环境的搭建有两部分,一是Cygwin,一是NDK
NDK安装
只需要解压即可,我的放在D:\java\NDK\android-ndk-r8b中。
Cygwin的安装
点击setup.ext。选择本地目录安装,接下来选择安装根目录。
下一步选择本地工具包的位置
下一步,单击“default”点,会变成“Install”,再“下一步”
安装完成之后在安装目录中C:\cygwin\home\xuxiaojun\.bash_profile文件的最后加上NDK=D:/java/NDK/android-ndk-r8b export NDK,NDK的根目录。
打开
,输入gcc –v(也可以输入其它的命令,如make -v),出现以下界面表示安装成功
再输入$NDK,出现以下界面,表示NDK里的工具可用。
在安装的过程中,并没有涉及到环境变量的设置。
编写NDK程序
编写NDK程序与普通的Android开发区别在于调用本地代码。详细的建立一个利用NDK技术工程的步骤:
1、 新建一个工程HelloJni,为了方便,可以将工程目录放置在NDK的samples下。
2、 在HelloJni根目录中添加一个新文件夹jni,在jni中包含hello.c和Android.mk文件。在这里需要注意的是.c文件的结构
.c文件结构
#include <string.h>
#include <jni.h>
jstring
Java_com_xxj_HelloJNIMy_HelloJNIMy_stringFromJNI( JNIEnv* env,
jobject thiz )
{
return (*env)->NewStringUTF(env, "HelloJNI !");
}
3、 用cygwin定位到某个已知的工程目录的jni目录下(该目录下包含Android.mk文件和C的源文件),如:D:\java\NDK\android-ndk-r8b\samples\HelloJniMy\jni,执行$NDK/ndk-build命令,此时在工程目录中会增libs和obj两个文件夹。Libs中的.so文件就是生成的动态库。
4、 重新编译