Android NDK工程创建与编译运行

首发地址:http://www.eoeandroid.com/thread-201993-1-1.html
 
一、 工程创建
1. 创建一个Android工程
配置好开发环境并加载好对应版本sdk后,选择菜单File->New-> Project创建工程,工程类型选择Android Project,如下图所示:

 
点击next,在工程属性选项里面填入你所希望的工程名、使用的Android SDK版本、应用程序名称、包名、Activity类名等信息,然后点击Finish按钮完成创建。
1. 添加NDK需要的文件夹与文件
在工程文件夹下创建新的文件夹jni,并在jni文件夹下作为C源文件的文件,完成后工程目录示例如下:

如下图所示:

二、 NDK部分
1. 编写C语言程序
NDK开发所使用的C或者CPP文件一般放置于jnc目录下,文件需要包含jni.h头文件以提供JNI相关支持,所编写的程序必须符合JNI调用接口规范。详见《JNI使用规范》。
 
2. mk文件添加
在jni目录下添加Android.mk文件,文件类容如下:
其中,LOCAL_PATH语句指定了编译路径;LOCAL_MODULE指定了编译生成的共享库的名称,LOCAL_SRC_FILES语句制定了编译文件名。

3.生成so共享库
打开Cygwin程序,进入工程JNI文件夹,然后执行NDK文件夹下的ndk-build文件,生成共享库。

编译成功完成后,可以在工程libs/armeabi文件夹下看到生成的共享库,目录示例如下:

至此,共享库部分完成。

 

三、 JAVA部分
1. 添加类的本地接口
在类的实现中添加函数接口,接口声明native表明其实现使用的是共享库方式,并加载对应的共享库。

2. mk文件添加

在jni目录下添加Android.mk文件,文件类容如下:

2. 调用本地接口
调用本地接口的方式与调用其他接口方式并无区别,示例得到的结果如下:

 
源码:NDKDemo.rar
 
posted on 2012-11-01 11:35  nuliniao  阅读(2532)  评论(2编辑  收藏  举报