Android Native Development Kit (NDK)
The NDK allows Android application developers to include native code in their Android application packages, compiled as JNI shared libraries.
For what's coming in NDK r21 in 2019Q3, see the r21 hotlist.
For further into the future, see the NDK Roadmap.
This section lists any in-progress features with open discussion bugs. We're still working on these and want to hear from you, so please read the thread and join the discussion if you have anything to add!
- None right now :)
Tutorial and API reference documentation is available on the Android Developer website:
- The NDK Guides help you get started with the NDK.
- The NDK API Reference covers all Android-specific APIs.
C library ("bionic") and dynamic linker documentation
The documentation for Android's C library ("bionic") may be useful:
- Android bionic status talks about what APIs are available in what releases, and behaviors that have changed between API levels.
- Android changes for NDK developers details important dynamic linker changes in various Android releases. Invaluable if you're having trouble loading your .so files.
- 32-bit ABI bugs documents issues for 32-bit code.
The documentation for Android OS developers has:
- Discussions related to the Android NDK happen on the android-ndk Google Group.
- File bugs against the NDK at https://github.com/android-ndk/ndk/issues.
- See our calendar for upcoming releases.
- The NDK and Android Studio support ndk-build and CMake out of the box, but we also have a Build System Maintainers Guide.
- If you want to work on the NDK itself rather than just use it, see the NDK team's internal documentation.