1.check out源代码:
2.搭建NDK环境:
2.1下载android-ndk,地址是:http://dl.google.com/android/ndk/android-ndk-r4b-windows.zip
http://dl.google.com/android/ndk/android-ndk-r4b-linux-x86.zip
2.2安装Cygwin,从以下站点下载:www.cygwin.com/setup.exe,(检查一下make和awk包是否已经勾选了,默认是勾选的), 去掉你不需要的包。
2.3进入Cygwin,设置android-ndk的环境变量,方法是修改~/.bash_profile,在末尾添加
ANDROID_NDK_ROOT=/cygdrive/f/ChromeDownload/android-ndk-r4b-windows/android-ndk-r4b export ANDROID_NDK_ROOT export PATH=$ANDROID_NDK_ROOT:$PAT
这几行,重启Cygwin
2.4运行NDK示例
进入$ANDROID_NDK_ROOT/samples/hello-jni
运行ndk-build即可在libs/armeabi下生成libhello-jni.so
启动eclipse,创建一个Android Project,选择Create project form existring source,执行Build,就可以在工程目录的bin下找到 HelloJni.apk
3.编写自己的NDK示例:
3.1NDK提供的能力:
It provides a set of system headers for stable native APIs that are guaranteed to be supported in all later releases of the platform:
- libc (C library) headers
- libm (math library) headers
- JNI interface headers
- libz (Zlib compression) headers
- liblog (Android logging) header
- OpenGL ES 1.1 and OpenGL ES 2.0 (3D graphics libraries) headers
- libjnigraphics (Pixel buffer access) header (for Android 2.2 and above).
- A Minimal set of headers for C++ support
3.2java jni:
参考:http://java.sun.com/developer/onlineTraining/Programming/JDCBook/jni.html
NOTE:在改动了JNI的代码后,需要重新ndk-build生成.so,但是adt不会自动检测到这个变化而重新生成.apk,让java代码更新一下,才会生成对于最新的.so的.apt。
3.3调试