The Android Native Development Kit (NDK)
This chapter covers the Android Native Development Kit, or NDK. I begin with an overview of the NDK, discussing what the NDK actually is, then examine the system and software requirements that must be met in order for you to use this kit in developing your Android programs. Then, the Java Native Interface, or JNI, is discussed, including how to use it to create functions that run in native machine code compiled from C/C++ code and can be called from Java functions from within the default Java framework we have used throughout this book. Next, a “Hello World” example using the JNI is presented that provides a step-by-step guide into creating a simple Android program that uses the JNI and native code written in the C language to output a string. Finally, another hands-on example is presented that takes pieces of existing code from our Drone Grid game and converts the existing Java code to native code.