Android NDK入门、提高和实战
2010-08-21 06:22:00 来源:WEB开发网网上也有一些对NDK的介绍,不过都是很简单的把sample里面的例子讲解一下,并不深入,我这里把我的所得分享一下。我下载的是Android Native Developer Kit (NDK) R4版本,当前的最新版。
下载地址如下:
http://dl.google.com/android/ndk/android-ndk-r4b-linux-x86.zip
我下面讲的都是以linux环境为准,因为我的系统是linux的。windows下可以弄个Cygwin,模拟linux环境,网上有很多介绍。
首先进入ndk目录,有个README文件,里面提到了API的文档在docs/STABLE-APIS.TXT里面,如何安装NDK,参考docs /INSTALL.TXT,还有如何使用NDK,参考docs/HOWTO.TXT。建议这些文档都看一遍,有个大概了解。
安装:
INSTALL.TXT里面讲的是如何安装,安装NDK,就需要一个可以make环境,linux自带了,所以不用关心。还有一点,以前的版本都需要运行build/host-setup.sh来进行初始化,这个版本把它删除了,这样更方便。
然后就是配置环境变量。
在~/.bashrc文件里面,添加
Shell代码
NDK_ROOT=~/android-ndk-r4b #后面的路径是NDK所在的目录,根据自己的目录修改
export NDK_ROOT
NDK_ROOT=~/android-ndk-r4b #后面的路径是NDK所在的目录,根据自己的目录修改
export NDK_ROOT
然后保存,重新打开bash。
使用:
先拿sample试刀吧,刚开始什么都不知道,只有运行出一个例子,才能增加信心。
编译的两种方法:
1.进入要目标工程目录,比如$NDK_ROOT/samples/hello-jni,然后执行$NDK_ROOT/ndk-build
2.在任何地方,执行$NDK_ROOT/ndk-build -C $NDK_ROOT/samples/hello-jni.
如果成功的话,会生成obj和libs两个目录。
选择一种方法,编译这个例子。然后打开eclipse,把hello-jni这个工程导入,运行,ok,就能看到效果了。
进阶:
docs下的STABLE-APIS.TXT里面讲了系统API的用法。我以1.5为例。进入$NDK_ROOT/build/platforms /android-3/arch-arm/usr/include,里面有很多.h文件,这些都是可以在NDK里面调用的,除了linux和asm目录下的。
一般来说,主要用到的是jni.h,里面提供了很多对类和对象的操作。
另外,1.5提供了log的API,在android/log.h里面,使用的时候,在c文件中#include ,然后在Android.mk里面加上LOCAL_LDLIBS := -llog,就可以了。
更多精彩
赞助商链接