NDK的好处:java
1. 代码的保护,因为apk的java层代码很容易被反编译,而C/C++库反汇难度较大。 2. 在NDK中调用第三方C/C++库,由于大部分的开源库都是用C/C++代码编写的。 3. 便于移植,用C/C++写得库能够方便在其余的嵌入式平台上再次使用。
android的NDK开发须要在linux下进行: 由于须要把C/C++编写的代码生成能在arm上运行的.so文件,这就须要用到交叉编译环境,而交叉编译须要在linux系统下才能完成。
安装android-ndk
开发包,在google android 官网下载: 经过这个开发包的工具才能将android jni 的C/C++的代码编译成库
android应用程序开发环境: 包括eclipse、java、 android sdk、 adt等。
安装完以后,须要将android-ndk的路劲加到环境变量PATH中:linux
sudo gedit /etc/environment
在environment的PATH环境变量中添加你的android-ndk
的安装路劲,而后再让这个更改的环境变量当即生效:android
source /etc/environment
通过了上述步骤,在命令行下敲:c++
ndk-bulid
弹出以下的错误,而不是说ndk-build not found
,就说明ndk环境已经安装成功了。windows
在NDKr7开始,google的windos版NDK提供了一个ndk-build.cmd的脚本,这样就能够直接利用这个脚本编译,而不须要cygwin了。前面章节我介绍了NDK利用cygwin来进行配置(《NDK利用cygwin环境配置》),如今开始咱们要与时俱进了,其实不一样之处就是设置c/c++编译器的不一样了。eclipse