一、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 解析
下面就是我學習的思維導圖