在Windows环境下,也可以进行NDK的开发。下面是配置环境的具体的步骤:
1. 下载NDK的zip包,解压缩。
2. 下载并安装Cygwin,这是一个在windows平台上运行的unix模拟环境的软件。注意在安装过程中,默认是不安装make和gcc的,所以一定要手工包含make和gcc程序。可以在安装成功后,启动Cygwin,输入make和gcc命令,查看是否安装成功。
3. 修改Cygwin安装目录下的 \cygwin\home\XXXX下面的.bash_profile文件,添加以下两句(根据NDK目录具体修改,/cygdrive/d/映射到Windows系统的d盘):
ANDROID_NDK_ROOT=/cygdrive/d/android-ndk-1.6_r1
export ANDROID_NDK_ROOT
配置好环境后,就可以进行NDK的开发了。NDK的开发和传统的JNI开发没什么不同,只不过如果使用NDK的环境,能够更方便的进行动态库的开发。如何开发JNI,可以参考很多其他的文章。
下面以编译sample下面的hello-jni进行举例,说明如何生成动态库文件。
1. 启动Cygwin Bash Shell,cd进入NDK sample的hello-jni目录,进而进入jni目录,可以看到hello-jni.c文件和Android.mk文件。
$ ls
Android.mk hello-jni.c
2. 运行$ANDROID_NDK_ROOT/ndk-build,如果运行成功,将看到生成so包的提示信息。
$ $ANDROID_NDK_ROOT/ndk-build
Gdbserver : [arm-linux-androideabi-4.4.3] libs/armeabi/gdbserver
Gdbsetup : libs/armeabi/gdb.setup
Compile thumb : hello-jni <= hello-jni.c
SharedLibrary : libhello-jni.so
Install : libhello-jni.so => libs/armeabi/libhello-jni.so
生成的so文件,就可以包含到Android工程中进行使用了。
最新评论