2012年12月2日 星期日

[Android] Android NDK (Native Development Kit)

Android NDK (Native Development Kit)
能透過 java 直接呼叫 c 程式所做功能的工具。

Android SDK 
是 google 提供 developers 開發的 Java-based API,app 會被執行在 Dalvik virtual machine,類似於 JVM,app 可以在任何裝置上執行,不受硬體 CPU 影響。

這樣 app 的執行速度相對於直接使用 C 來控制慢,尤其是影音方面的運算。所以有了 NDK,透過 NDK 可以直接操作底層功能加快執行速度。

因此形成主程式使用 Java,有速度上要求部份的如驅動程式、繪圖功能則使用 C;Android system 可分為 Java - JNI - C,透過 JNI(java native interface) 間接 Java 與 C


* Reference
- 49歐姆 整機教學: android HAL 層與 android NDK
- 49歐姆 整機教學: android HAL 硬體抽象層
- 49歐姆 整機教學
- What is the NDK?

沒有留言:

張貼留言