Native code with Android
Hot on the heels of Android 1.6 (code name Donut), the Android development team has now released version 1.6 rel 1 of the Android NDK (Native Development Kit). The NDK is a toolkit comparable with the standard Android Software Development Kit (SDK), which allows Android developers to write parts of their applications in native code languages such as C and C++.
It contains tools and build files for generating native code libraries from C and C++ source code. It also allows native libraries to be embedded in application packages for deployment on Android devices. The Android 1.6 NDK requires the Android SDK and is available for Windows, Mac OS X and Linux (32/64 bit).
The new release allows the use of headers and libraries which support the "OpenGL ES 1.1" (Open Graphics Library for Embedded Systems) standard for developing 3D graphics. The new version also features a simplified and more efficient build system. The developers advise all users running version 1.5 to upgrade to the latest release.
The toolkit is primarily suitable for ARM Processor Instruction Set architectures and also supports stable headers for libraries including libc, libm, libz, liblog and the Java Native Interface (JNI). It's important to note that the NDK does not offer native support for all applications. Android's standard runtime environment remains the Java-based Dalvik virtual machine.