了解NDK
Android NDK 是在SDK前面又加上了“原生”二字,即Native Development Kit,因此又被Google称为“NDK”。
了解JNI
JNI是Java Native Interface的缩写,它提供了若干的API实现了Java和其他语言的通信。从Java1.1开始,JNI标准成为java平台的一部分。
NDK 与 JNI 的理解和区分
NDK : Google的一套开发和工具集,主要用于Android的jni开发;
JNI : 一套编程接口,用来实现Java代码和本地的C/C++代码进行交互的;
为何要用到NDK?
概括来说主要分为以下几种情况:
- 代码的保护,由于apk的java代码很容易被反编译,而C/C++库反汇难度较大。
- 在NDK中调用第三方C/C++库,因为大部分的开源库都是用C/C++代码编写的。
- 便于移植,用C/C++写的库可以方便在其他的嵌入式平台上再次使用。
NDK的安装
1: 下载ndk。
使用AS内部下载,google在中国也部署了服务器,所以不用翻墙也可以下载。下面文件有点大,需要耐心等等。
路径: File->setting->System Setting->Anroid SDK
![](https://img.haomeiwen.com/i909565/72996b319895f1ee.png)
下载完成的ndk文件路径,应该在SDK目录下面:
![](https://img.haomeiwen.com/i909565/02f52191614b4dfb.png)
2: 配置AS中ndk路径。
![](https://img.haomeiwen.com/i909565/3de6313fda60f682.png)
并在local.properties配置文件中检查是否正确配置路径。
![](https://img.haomeiwen.com/i909565/be0d31ad2bacc410.png)
3: ndk配置环境变量
![](https://img.haomeiwen.com/i909565/bf595701a8d99857.png)
![](https://img.haomeiwen.com/i909565/73a56298482cda95.png)
CMD下测试安装是否成功:
![](https://img.haomeiwen.com/i909565/1327dbbe7e6fa8b2.png)
4: 设置as。将ndk版本差异检测过滤掉,要不然项目无法编译。添加:
![](https://img.haomeiwen.com/i909565/e26c3ae7fd5e9ccc.png)
到这里ndk的环境就搭建完成了,配置也好了,下一篇进行JNI开发之SO文件的生成和给第三方调用
网友评论