Stay organized with collections
Save and categorize content based on your preferences.
This page shows you how to configure the NDK in your project according to the
version of the Android Gradle Plugin (AGP) used by the project.
The steps vary according to the version of AGP used in the project. Find the
Android Gradle Plugin version in either of the following locations:
File > Project Structure > Project menu in Android Studio
The top-level build.gradle file in the project
Select the version below:
AGP version 4.1+
You have the following options to configure the NDK:
(Recommended) Use the
ndkVersion property
to set the NDK version.
Do not set any property. Android Studio will automatically download the
default version of the NDK for that specific AGP version
(in this case, NDK version 21.0.6113669) or you can
install the NDK from the command line. Android Studio
installs all versions of the NDK in the
android-sdk/ndk/ directory. Each version is located
in a subdirectory with the version number as its name.
For special use cases, use the ndkPath property:
Groovy
android{ndkPath"/Users/ndkPath/ndk21"// Point to your own NDK}
Kotlin
android{ndkPath="/Users/ndkPath/ndk21"// Point to your own NDK}
Install the NDK from the command line
To install the NDK from the command line, do the following:
Use the sdkmanager tool to view versions of CMake and NDK packages that
are available. Similar to other SDK components, the NDK is released through
different channels:
Content and code samples on this page are subject to the licenses described in the Content License. Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
Last updated 2023-04-12 UTC.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2023-04-12 UTC."],[],[],null,["# Configure the NDK for the Android Gradle plugin\n\nThis page shows you how to configure the NDK in your project according to the\nversion of the Android Gradle Plugin (AGP) used by the project.\n| **Note:** If possible, you should try to update the version of AGP in your project to version 4.1 or later. These AGP versions will auto-download the NDK for you in Android Studio.\n\nThe steps vary according to the version of AGP used in the project. Find the\nAndroid Gradle Plugin version in either of the following locations:\n\n- **File \\\u003e Project Structure \\\u003e Project** menu in Android Studio\n- The top-level `build.gradle` file in the project\n\nSelect the version below: \nAGP 4.1+ AGP 4.0 AGP 3.6 AGP 3.5 AGP 3.4\n\nAGP version 4.1+\n----------------\n\nYou have the following options to configure the NDK:\n\n- (Recommended) Use the [`ndkVersion`](/studio/projects/install-ndk#apply-specific-version) property to set the NDK version.\n- Do not set any property. Android Studio will automatically download the [default version of the NDK for that specific AGP version](/studio/projects/install-ndk#default-ndk-per-agp) (in this case, NDK version 21.0.6113669) or you can [install the NDK from the command line](#command-line). Android Studio installs all versions of the NDK in the \u003cvar translate=\"no\"\u003eandroid-sdk\u003c/var\u003e`/ndk/` directory. Each version is located in a subdirectory with the version number as its name.\n- For special use cases, use the `ndkPath` property:\n\n ### Groovy\n\n ```groovy\n android {\n ndkPath \"/Users/ndkPath/ndk21\" // Point to your own NDK\n }\n ```\n\n ### Kotlin\n\n ```kotlin\n android {\n ndkPath = \"/Users/ndkPath/ndk21\" // Point to your own NDK\n }\n ```\n | **Note:** Remove this property before distributing your source code; it should be left outside of your version control system.\n\n### Install the NDK from the command line\n\nTo install the NDK from the command line, do the following:\n\n1. Use the `sdkmanager` tool to view versions of CMake and NDK packages that\n are available. Similar to other SDK components, the NDK is released through\n different channels:\n\n ```scdoc\n sdkmanager --list [--channel=channel_id] // NDK channels: 0 (stable),\n // 1 (beta), or 3 (canary)\n ```\n2. Pass the `sdkmanager` the strings for the packages that you want to install.\n For example, to install CMake or the NDK, use the following syntax:\n\n ```transact-sql\n sdkmanager --install\n [\"ndk;\u003cvar translate=\"no\"\u003emajor\u003c/var\u003e.\u003cvar translate=\"no\"\u003eminor\u003c/var\u003e.\u003cvar translate=\"no\"\u003ebuild\u003c/var\u003e[\u003cvar translate=\"no\"\u003esuffix\u003c/var\u003e]\" | \"cmake;major.minor.micro.build\"]\n [--channel=\u003cvar translate=\"no\"\u003echannel_id\u003c/var\u003e]\n ```\n\n Use the `--channel` option to only install a package if it has been released\n in a channel *up to and including* \u003cvar translate=\"no\"\u003echannel_id.\u003c/var\u003e\n\nFor more information, see [sdkmanager](/studio/command-line/sdkmanager)."]]