
Description
Most Android apps are written in Java/Kotlin, but to squeeze out performance, reuse existing C/C++ libraries, or build a game engine or media pipeline, you drop to the native layer. The Android NDK is the official toolchain that compiles C/C++ code into native libraries Android can run — cross-compiling, debugging and packaging in one flow.
Made by Google, free, used with Android Studio or the command line, the standard kit for Android native development.
Cross-compilation toolchain: a Clang/LLVM-based compiler builds C/C++ source into native libraries for arm64, armeabi, x86 and other Android ABIs.
CMake and ndk-build: both the CMake and the built-in ndk-build systems are supported, so existing C/C++ projects fold into an Android build fairly smoothly.
JNI bridging: JNI headers and support libraries let the Java/Kotlin layer and native layer call each other, handing the heavy work to C/C++.
Native debugging: with LLDB you can set breakpoints and inspect variables in native code to trace C/C++ crashes and memory issues.
LTS support: LTS releases keep the API and toolchain stable, letting long-maintained projects pin a version.
Made by Google, free, used with Android Studio or the command line, the standard kit for Android native development.
Features
Cross-compilation toolchain: a Clang/LLVM-based compiler builds C/C++ source into native libraries for arm64, armeabi, x86 and other Android ABIs.
CMake and ndk-build: both the CMake and the built-in ndk-build systems are supported, so existing C/C++ projects fold into an Android build fairly smoothly.
JNI bridging: JNI headers and support libraries let the Java/Kotlin layer and native layer call each other, handing the heavy work to C/C++.
Native debugging: with LLDB you can set breakpoints and inspect variables in native code to trace C/C++ crashes and memory issues.
LTS support: LTS releases keep the API and toolchain stable, letting long-maintained projects pin a version.
