This document provides an introduction to the Android NDK. It discusses:
- What the Android NDK is and how it allows building and debugging C/C++ code to run on Android by invoking it from Java via JNI.
- Reasons for using the NDK including performance improvements from native code and reusing existing C/C++ libraries and code.
- The basic process for using the NDK including declaring native methods, generating headers, and implementing native code.
- Potential gotchas like managing reference counting and ensuring libraries are reinitialized when an activity restarts.