Instalowanie i konfigurowanie NDK i CMake

Aby skompilować i debugować kod natywny aplikacji, potrzebujesz tych komponentów:

  • Android Native Development Kit (NDK): zestaw narzędzi umożliwiających używanie kodu w językach C i C++ na Androidzie.
  • CMake: zewnętrzne narzędzie do kompilacji, które współpracuje z Gradle przy tworzeniu biblioteki natywnej. Nie potrzebujesz tego komponentu, jeśli zamierzasz używać tylko ndk-build.
  • LLDB – debuger używany w Android Studio do debugowania kodu natywnego. Domyślnie LLDB będzie zainstalowana razem z Androidem Studio.

Z tego artykułu dowiesz się, jak zainstalować te komponenty automatycznie lub za pomocą Androida Studio bądź narzędzia sdkmanager, aby pobrać i zainstalować je ręcznie.

Automatyczne instalowanie NDK i CMake

Wtyczka Androida do obsługi Gradle w wersji 4.2.0 lub nowszej może automatycznie zainstalować wymagany pakiet NDK i CMake, gdy po raz pierwszy tworzysz projekt, jeśli jego licencje zostały wcześniej zaakceptowane. Po przeczytaniu i zaakceptowaniu warunków licencji możesz wstępnie zaakceptować licencje w skryptach, używając tego polecenia:

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

Instalowanie pakietów NDK i CMake

Gdy zainstalujesz pakiet NDK, Android Studio wybierze najnowszy dostępny pakiet NDK. W większości projektów instalacja tej domyślnej wersji pakietu NDK jest wystarczająca. Jeśli Twój projekt potrzebuje co najmniej 1 konkretnej wersji pakietu NDK, możesz pobrać i skonfigurować określone wersje. Pomaga to zapewnić powtarzalne kompilacje w różnych projektach, z których każdy zależy od konkretnej wersji NDK. Android Studio instaluje wszystkie wersje pakietu NDK w katalogu android-sdk/ndk/.

Aby zainstalować CMake i domyślny pakiet NDK w Android Studio, wykonaj te czynności:

  1. W otwartym projekcie kliknij Narzędzia > Menedżer pakietów SDK.

  2. Kliknij kartę Narzędzia SDK.

  3. Zaznacz pola wyboru NDK (obok siebie) i CMake.

    Ilustracja przedstawiająca SDK Manager Rysunek 1. Okno Narzędzia SDK z opcją NDK (obok siebie)

  4. Kliknij OK.

    W oknie dialogowym pojawi się informacja, ile miejsca na dysku zajmuje pakiet NDK.

  5. Kliknij OK.

  6. Gdy instalacja się zakończy, kliknij Zakończ.

  7. Twój projekt automatycznie synchronizuje plik kompilacji i wykonuje kompilację. Popraw ewentualne błędy.

Konfigurowanie konkretnej wersji CMake

SDK Manager zawiera rozwidloną wersję CMake (3.6.0) i wersję 3.10.2. Projekty, dla których nie ustawiono konkretnej wersji CMake, tworzy się w CMake 3.10.2. Aby ustawić wersję CMake, dodaj ten kod do pliku build.gradle modułu:

Odlotowy

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

Kotlin

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

Jeśli chcesz użyć wersji CMake, której nie ma w Menedżerze SDK, wykonaj te czynności:

  1. Pobierz i zainstaluj CMake z oficjalnej strony CMake.
  2. W pliku build.gradle modułu określ wersję CMake, której ma używać Gradle.
  3. Dodaj ścieżkę do instalacji CMake do zmiennej środowiskowej PATH lub umieść ją w pliku local.properties projektu, jak pokazano poniżej. Jeśli Gradle nie może znaleźć wersji CMake podanej w pliku build.gradle, wystąpi błąd kompilacji.

    # If you set this property, Gradle no longer uses PATH to find CMake.
    cmake.dir = "path-to-cmake"</pre>
    
  4. Jeśli na swojej stacji roboczej nie masz jeszcze zainstalowanego systemu kompilacji Ninja, wejdź na oficjalną stronę Ninja, a potem pobierz i zainstaluj najnowszą wersję Ninja dostępną na Twój system operacyjny. Pamiętaj też, aby dodać ścieżkę do instalacji ninja do zmiennej środowiskowej PATH.

Zainstaluj określoną wersję pakietu NDK

Aby zainstalować konkretną wersję pakietu NDK, wykonaj te czynności:

  1. W otwartym projekcie kliknij Narzędzia > Menedżer pakietów SDK.

  2. Kliknij kartę Narzędzia SDK.

  3. Zaznacz pole wyboru Pokaż szczegóły pakietu.

  4. Zaznacz pole wyboru NDK (obok siebie) i znajdujące się pod nim pola wyboru odpowiadające wersjach NDK, które chcesz zainstalować. Android Studio instaluje wszystkie wersje pakietu NDK w katalogu android-sdk/ndk/.

    Obraz przedstawiający okno SDK Tools Rysunek 2. Okno Narzędzia SDK z opcjami NDK (obok siebie)

  5. Kliknij OK.

    W oknie dialogowym pojawi się informacja o ilości miejsca zajętego przez pakiety NDK.

  6. Kliknij OK.

  7. Gdy instalacja się zakończy, kliknij Zakończ.

  8. Twój projekt automatycznie synchronizuje plik kompilacji i wykonuje kompilację. Popraw ewentualne błędy.

  9. Skonfiguruj każdy moduł w wersji NDK, której chcesz używać. Jeśli używasz Androida Studio w wersji 3.6 lub nowszej, a nie określisz wersji, wtyczka Androida do obsługi Gradle wybierze wersję, z którą jest zgodna.

Skonfiguruj określone wersje NDK w projekcie

Skonfiguruj wersję pakietu NDK w projekcie, jeśli jest spełniony jeden z tych warunków:

  • Twój projekt jest dziedziczony i musisz używać określonych wersji NDK i wtyczki Androida do obsługi Gradle (AGP). Więcej informacji znajdziesz w artykule o konfigurowaniu pakietu NDK na potrzeby wtyczki Androida do obsługi Gradle.
  • Masz zainstalowanych wiele wersji pakietu NDK i chcesz użyć konkretnej. W takim przypadku określ wersję za pomocą właściwości android.ndkVersion w pliku build.gradle modułu, tak jak w tym przykładzie kodu.

    Odlotowy

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

    Kotlin

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

Domyślna wersja NDK na wersję AGP

Każda wersja AGP jest dokładnie testowana przed wydaniem najnowszej wersji stabilnej NDK. Ta wersja NDK jest używana do tworzenia projektów, jeśli nie podasz wersji NDK w pliku build.gradle. Informacje o domyślnej wersji NDK dla różnych wersji AGP znajdziesz w informacjach o wersji zgodnej z zasadami i w poprzednich informacjach o wersjach zgodnej z zasadami.