一、Android NDK 开发
原生开发套件 (NDK) 是一套工具,使您能够在 Android 应用中使用 C 和 C++ 代码,并提供众多平台库,您可使用这些平台库管理原生 Activity 和访问实体设备组件,— 官网
- 进一步提升设备的性能,以降低延迟或运行计算密集型应用,比如处理游戏、处理图片模糊
- 使用其他人开发的C/C++库,比如软硬件结合开发的,以软件控制硬件驱动(当然移动端处理比较少 大多数是后台处理,但是也不能否认一些定制类型的APP需要用到)
Android的SDK都是Java语言实现的,所以一般开发都是Java语言开发的,但是 Android从问世就支持C/C++,那C/C++在Android开发中能做些什么?是我们学习NDK开发的动力也是目标。
- 使用场景
- 跨平台的库操作, 比如FFmpeg
- 加固、防止逆向
- 签名校验
- 图片处理
- 音视频处理
- 加密算法
- 软件硬件结合的产品,操作硬件驱动等
- 目的
了解NDK开发,熟悉开发流程,读懂native代码
-
Android NDK开发基础篇(一)
- 概念
- 与JNI的关系
- Android Studio怎么创建JNI的项目
- 第一个函数解析
-
-
Android NDK开发基础篇(二)
- JNIEnv
- jobject
- java类型和native(C++)类型的映射关系
- jclass
-
-
Android NDK开发进阶篇(三)
- c++中创建Java对象
-
-
Android NDK开发进阶篇(四)
- native访问Java层代码
- Java和C++的多态机制
-
-
Android NDK开发特别篇
- JNIEnv 解析
下面就是我学习的思维导图