转载自:http://blog.csdn.net/mylzc/article/details/8740523html
最近一段时间在作native层的开发,把一些经验和技巧记录下来,但愿对你们有帮助。本教程以step-by-step的形式给正处入门阶段的native开发新手提供指引。java
导言:在进行Android开发的过程当中,在一些对性能要求较高的场景,例如图像处理,视音频编解码等,须要使用到native代码以提升运行效率。本教程将在native层进行加法运算和字符串链接,经过这个简单的例子阐述使用eclipse编译运行ndk代码的过程。android
注:JNI基础知识不在本文的讨论范围以内,推荐浏览oracle的帮助文档进行系统学习git
开发环境:github
Adt-bundle(ver:21.1.0) 下载地址:https://developer.android.com/sdk/index.htmloracle
Ndk(ver:r8b) 下载地址:https://developer.android.com/tools/sdk/ndk/index.htmleclipse
示例工程下载地址:https://github.com/ilzc/Code/tree/master/jniide
步骤详解:函数
一、 配置ndk路径性能
打开Eclipse后,点击菜单栏的Project->Preferences打开Preferences窗口,点击左侧Android->NDK选项,在右侧NDK Location填入ndk的路径
二、 建立工程并增长native支持
点击菜单栏的File->New->Android Application Project建立Android工程。
建立完毕后,在PackageExplorer中右键点击刚才新建的Android项目,选择Android Tools->Add Native Support,按下图填写,点击确认后,工程目录下会增长jni目录,jni目录下有test.cpp和Android.mk。
三、 编写jave层的jni接口
建立一个Java类,类名为Jni
编写加载库的代码,并添加两个native方法
四、 编写native层的代码
五、 编写Android.mk
六、 编译运行
编译:在Package Explorer视窗,右键点击jni项目,选择Build Project编译项目,编译成功后,在工程libs->armeabi目录下能够看到libtest.so。
运行:在Package Explorer视窗,右键点击jni项目,选择Run As->Android Application运行工程。
最后,咱们能够在logcat中能够看到打印结果: