Android NDK is also called NDK by Google because it adds the word "native" to the SDK, that is, "native development kit".
Prior to this, third-party applications on the Android platform were developed by relying on the Java based Dalvik special virtual machine. The release of native SDK allows developers to have more direct access to Android system resources, write programs in traditional C or C++languages, and directly embed native library files in program package files (. apks).
However, Google also said that the use of native SDK programming has some disadvantages compared with the Dalvik virtual machine, such as more complex programs, difficult to guarantee compatibility, inability to access the Framework API, and greater difficulty in debugging. Developers need to use it at their own discretion.
As we all know, Android programs run in the Dalvik virtual machine, and NDK allows users to execute some programs using native code languages such as C/C++.
NDK includes:
-
Tools and build files needed to generate native code libraries from C/C++.
-
Embed the consistent native library into the application package files (i.e.. Apk files) that can be deployed on Android devices.
-
Support some native system header files and libraries for all future Android platforms
If you have more questions about NDK, you can go to NDK Forum Find out.