NDK环境配置(包括最新版)及简单实用

发布时间 : 星期日 文章NDK环境配置(包括最新版)及简单实用更新完毕开始阅读

一、NDK-R7之前的版本的环境配置。 ....................................................................................... 1

1、cygwin安装 ........................................................................................................................ 1 2、cygwin环境验证 ................................................................................................................ 2 3、配置NDK路径 .................................................................................................................. 2 4、生成.h文件 ......................................................................................................................... 3 5、编写C/C++代码 ................................................................................................................. 4 6、生成.so文件 ....................................................................................................................... 5 二、使用NDK-R7版NDK搭建Android开发环境 .................................................................... 6

1、 启动Eclipse,新建Android工程(此处名为TestNDK) ........................................... 6 2、在项目中新建Jni类,示例代码如下: .......................................................................... 7 3、生成.h文件 ......................................................................................................................... 7 4、编写C/C++代码 ................................................................................................................. 7 5、生成.so文件 ....................................................................................................................... 9

5.1、新建一个文件Android.mk,文件内容如下.......................................................... 9 5.2、在TestNDK工程的根目录下新建文件夹jni,将 Android.mk和king_testNdk_Jni.c 这两个文件,将其拷贝到TestNDK->jni文件夹下面。 ............. 9 5.3、新建并配置一个Builder ......................................................................................... 9

一、NDK-R7之前的版本的环境配置。

一些下载,可按需要选择:

NDK r7:http://developer.android.com/sdk/ndk/index.html Cygwin:http://www.cygwin.com/ (1.7.11-1)

notepad++:http://notepad-plus-plus.org/download/v5.9.8.html

1、cygwin安装

① 运行下载的setup.exe,点Next ② 选择安装方式。选择在线安装,如果有现成离线包时,可选择离线安装 ③ 选择安装目录(Cygwin最终的安装目录) ④ 设置本地包暂存路径(下载文件存放目录) ⑤ 设置网络连接方式:默认直接连接 ⑥ 选择下载站点。这个速度比较快http://mirrors.163.com ⑦ 选择安装项。在默认设置下,只需选择Devel(点击列表中Devel,将后面的Default改为Install),其它均为默认状态。

注:binutils、gcc、gcc-mingw、gdb、make等必装。 ⑧ 漫长等待,直到下载完成

注:下载完后的包可以备份下,以便以后可以直接离线安装,速度快哦! ⑨ 为系统添加环境变量(系统属性->环境变量->Path),如我的为C:/cygwin/bin。

2、cygwin环境验证

① 运行Cygwin一次(Cygwin.bat),以便创建一些用户环境文件 ② 检测

cygwin的版本:cygcheck -c cygwin gcc的版本:gcc -v g++的版本:g++ -v make的版本:make -v

我这里g++没有装好,不过暂时不影响使用。

3、配置NDK路径

① 将下载的NDK解压缩到某个目录

② 在 cygwin的 home\\<你的用户名>\\.bash_profile 文件中最后添加:(可用notepad++或者

UltraEdit打开)

NDK=/cygdrive/<你的盘符>/ export NDK, 如我的为 NDK=/cygdrive/E/Android/android-ndk-r7b export NDK 注:\这个名字随便起,以后经常用别太长 ② 验证

重启cygwin,输入:cd $NDK

可进入ndk对应目录说明设置OK。

生成项目中native方法,编译成so文件。

在eclipse中新建一个android项目,例如testNdk,最低适应版本选1.5以上,以为NDK支持的最低版本就是1.5,我这里选的2.1。 在项目中新建Jni类,示例代码如下:

public class Jni {

public native int showRusult(int a,int b); } TestNdkActivity类示例代码如下:

@Override

public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); Jni jni = new Jni();

int aa = jni.showRusult(4, 87); Log.v(\, \ + aa);

setTitle(jni.showRusult(5,8)+\);

} 将项目编译一下,让系统生成类的class文件,一会要用到。

4、生成.h文件

打开Cygwin,进入项目的bin目录下,

如果之前已经编译过了,那系统应该已经在项目bin目录中生成了classes文件夹,进入这个文件夹。

输入命令 javah -classpath . -jni 本地类名(包括包名),我的如下

然后可以看到在classes文件夹中已经生成了.h文件。

5、编写C/C++代码

先来看一下生成的king_testNdk_Jni.h

Java_king_testNdk_Jni_showRusult就是我们要在C/C++中实现的方法。新建一个文件,命名与.h文件保持一致,扩展名为.c。

在这里可以看出,C/C++文件中类的命名方式为Java_包名_类名_方法名

联系合同范文客服:xxxxx#qq.com(#替换为@)