Report issues to GitHub.
For Android Studio issues, follow the docs on the Android Studio site.
GCC is no longer supported. It will be removed in NDK r18.
libc++ is now the default STL for CMake and standalone toolchains. If you manually selected a different STL, we strongly encourage you to move to
libc++. Note that ndk-build still defaults to no STL. For more details, see this blog post.
gnustl, gabi++, and stlport have been removed.
Support for ARMv5 (armeabi), MIPS, and MIPS64 has been removed. Attempting to build any of these ABIs will result in an error.
Support for ICS (android-14 and android-15) has been removed. Apps using executables no longer need to provide both a PIE and non-PIE executable.
The Play Store will require 64-bit support when uploading an APK beginning in August 2019. Start porting now to avoid surprises when the time comes. For more information, see this blog post.
libandroid_supportis no longer used when your NDK API level is greater than or equal to 21 (Lollipop). Build system maintainers: be sure to update your build systems to account for this.
ANDROID_NDK_REVISION: The full string in the source.properties file.
ANDROID_NDK_MAJOR: The major revision of the NDK. For example: the 16 in r16b.
ANDROID_NDK_MINOR: The minor revision of the NDK. For example: the b (represented as 1) in r16b.
ANDROID_NDK_BUILD: The build number of the NDK. This is 0 in the case of a local development build.
ANDROID_NDK_BETA: The beta version of the NDK. This is 0 for a stable release.
APP_WRAP_SH), which will install a single script for every ABI, and an ABI-specific form (
APP_WRAP_SH_arm64-v8a, etc) to allow for per-ABI customization of the wrap.sh script.
-fno-integrated-asfor arm32 by default. If your project contains hand written assembly, you may need to pass this flag.
APP_CLANG_TIDY := true, or per-module with
LOCAL_CLANG_TIDY := true. * Pass specific clang-tidy flags such as
LOCAL_CLANG_TIDY_FLAGS. * As usual, module settings override application settings. * By default no flags are passed to clang-tidy, so only the checks enabled by default in clang-tidy will be enabled. View the default list with
clang-tidy -list-checks. * By default clang-tidy warnings are not errors. This behavior can be changed with
thread_localvariables with non-trivial destructors will cause segfaults if the containing library is
dlcloseed on devices running M or newer, or devices before M when using a static STL. The simple workaround is to not call