Установите и настройте NDK и CMake.

Для компиляции и отладки собственного кода вашего приложения вам понадобятся следующие компоненты:

  • Android Native Development Kit (NDK): набор инструментов, позволяющий использовать код C и C++ с Android.
  • CMake: внешний инструмент сборки, который работает вместе с Gradle для сборки вашей собственной библиотеки. Вам не нужен этот компонент, если вы планируете использовать только ndk-build.
  • LLDB: отладчик, который Android Studio использует для отладки собственного кода. По умолчанию LLDB будет установлен вместе с Android Studio.

На этой странице описывается, как установить эти компоненты автоматически или с помощью Android Studio или инструмента sdkmanager для их загрузки и установки вручную.

Автоматическая установка NDK и CMake

Android Gradle Plugin 4.2.0+ может автоматически установить требуемые NDK и CMake при первой сборке проекта, если их лицензии были приняты заранее. Если вы уже прочитали и согласны с условиями лицензии, то вы можете предварительно принять лицензии в скриптах с помощью следующей команды:

   yes | ${sdk}/cmdline-tools/latest/bin/sdkmanager --licenses

Установите NDK и CMake

При установке NDK Android Studio выбирает последнюю доступную версию NDK. Для большинства проектов достаточно установить эту версию NDK по умолчанию. Однако если вашему проекту требуется одна или несколько определенных версий NDK, вы можете загрузить и настроить определенные версии . Это поможет вам обеспечить воспроизводимые сборки в проектах, каждый из которых зависит от определенной версии NDK. Android Studio устанавливает все версии NDK в каталог android-sdk /ndk/ .

Чтобы установить CMake и NDK по умолчанию в Android Studio, выполните следующие действия:

  1. Открыв проект, нажмите Инструменты > Менеджер SDK .

  2. Перейдите на вкладку «Инструменты SDK» .

  3. Установите флажки NDK (Side by side) и CMake .

    Изображение SDK Manager Рисунок 1. Окно инструментов SDK , показывающее опцию NDK (бок о бок)

  4. Нажмите ОК .

    В диалоговом окне отображается информация о том, сколько места занимает пакет NDK на диске.

  5. Нажмите ОК .

  6. После завершения установки нажмите кнопку Готово .

  7. Ваш проект автоматически синхронизирует файл сборки и выполняет сборку. Устраните все возникающие ошибки.

Настройте определенную версию CMake

SDK Manager включает в себя ответвленную версию CMake 3.6.0 и версию 3.10.2. Проекты, не устанавливающие определенную версию CMake, собираются с помощью CMake 3.10.2. Чтобы установить версию CMake, добавьте следующее в файл build.gradle вашего модуля:

Круто

android {
    ...
    externalNativeBuild {
        cmake {
            ...
            version "cmake-version"
        }
    }
}

Котлин

android {
    ...
    externalNativeBuild {
        cmake {
            ...
            version = "cmake-version"
        }
    }
}

Если вы хотите использовать версию CMake, которая не включена в SDK Manager, выполните следующие действия:

  1. Загрузите и установите CMake с официального сайта CMake.
  2. Укажите версию CMake, которую Gradle должен использовать, в файле build.gradle вашего модуля.
  3. Либо добавьте путь к установке CMake в переменную среды PATH , либо включите его в файл local.properties вашего проекта, как показано. Если Gradle не может найти версию CMake, указанную вами в файле build.gradle , вы получите ошибку сборки.

    # If you set this property, Gradle no longer uses PATH to find CMake.
    cmake.dir = "path-to-cmake"</pre>
    
  4. Если на вашей рабочей станции еще не установлена ​​система сборки Ninja, перейдите на официальный сайт Ninja , загрузите и установите последнюю версию Ninja, доступную для вашей ОС. Не забудьте также добавить путь к установке Ninja в переменную среды PATH .

Установить определенную версию NDK

Чтобы установить определенную версию NDK, выполните следующие действия:

  1. Открыв проект, нажмите Инструменты > Менеджер SDK .

  2. Перейдите на вкладку «Инструменты SDK» .

  3. Установите флажок Показать сведения о пакете .

  4. Установите флажок NDK (Side by side) и флажки под ним, соответствующие версиям NDK, которые вы хотите установить. Android Studio устанавливает все версии NDK в каталог android-sdk /ndk/ .

    Изображение окна SDK Tools Рисунок 2. Окно инструментов SDK, показывающее параметры NDK (бок о бок)

  5. Нажмите ОК .

    В диалоговом окне отображается информация о том, сколько места занимает пакет(ы) NDK.

  6. Нажмите ОК .

  7. После завершения установки нажмите кнопку Готово .

  8. Ваш проект автоматически синхронизирует файл сборки и выполняет сборку. Устраните все возникающие ошибки.

  9. Настройте каждый модуль с версией NDK, которую вы хотите использовать. При использовании Android Studio 3.6 или выше, если вы не укажете версию, плагин Android Gradle выберет версию, с которой он заведомо совместим.

Настройте определенные версии NDK в вашем проекте

Вам может потребоваться настроить версию NDK в вашем проекте, если выполняется одно из следующих условий:

  • Ваш проект унаследован, и вам необходимо использовать определенные версии NDK и плагина Android Gradle (AGP). Для получения дополнительной информации см. Настройка NDK для плагина Android Gradle .
  • У вас установлено несколько версий NDK, и вы хотите использовать определенную. В этом случае укажите версию с помощью свойства android.ndkVersion в файле build.gradle модуля, как показано в следующем примере кода.

    Круто

    android {
        ndkVersion "major.minor.build" // e.g.,  ndkVersion "21.3.6528147"
    }

    Котлин

    android {
        ndkVersion = "major.minor.build" // e.g.,  ndkVersion "21.3.6528147"
    }

Версия NDK по умолчанию для каждой версии AGP

Перед выпуском каждая версия AGP тщательно тестируется с последней стабильной версией NDK на тот момент. Эта версия NDK используется для сборки ваших проектов, если вы не указали версию NDK в файле build.gradle . Версия NDK по умолчанию для различных версий AGP задокументирована в примечаниях к выпуску AGP и примечаниях к предыдущим выпускам AGP .