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ęzyku C i C++ na Androidzie.
- CMake: zewnętrzne narzędzie do kompilacji, które współpracuje z Gradle przy tworzeniu biblioteki natywnej. Jeśli zamierzasz używać tylko polecenia ndk-build, nie potrzebujesz tego komponentu.
- LLDB: debuger używany przez Android Studio do debugowania kodu natywnego. Domyślnie LLDB będzie instalowany razem z Android Studio.
Na tej stronie dowiesz się, jak zainstalować te komponenty automatycznie lub za pomocą Android Studio bądź narzędzia sdkmanager
, aby je pobrać i zainstalować ręcznie.
Automatycznie zainstaluj NDK i CMake
Wtyczka Androida do obsługi Gradle w wersji 4.2.0 lub nowszej może automatycznie zainstalować wymagane pakiety NDK i CMake przy pierwszym tworzeniu projektu, o ile ich licencje zostały wcześniej zaakceptowane. Jeśli znasz już warunki licencji i je akceptujesz, możesz wstępnie zaakceptować licencje w skryptach, używając tego polecenia:
yes | ${sdk}/cmdline-tools/latest/bin/sdkmanager --licenses
Instalowanie NDK i CMake
Podczas instalacji pakietu NDK Android Studio wybiera najnowszą dostępną wersję NDK. W większości projektów wystarczy zainstalować tę domyślną wersję NDK.
Jeśli Twój projekt wymaga co najmniej 1 konkretnej wersji NDK, możesz pobrać i skonfigurować określone wersje. Pomaga to zapewnić odtwarzalne kompilacje w projektach, które zależą od konkretnej wersji NDK. Android Studio instaluje wszystkie wersje pakietu NDK z katalogu android-sdk/ndk/
.
Aby zainstalować CMake i domyślny pakiet NDK w Android Studio, wykonaj te czynności:
Po otwarciu projektu kliknij Narzędzia > Menedżer SDK.
Kliknij kartę Narzędzia SDK.
Zaznacz pola wyboru NDK (obok siebie) i CMake.
Rysunek 1. Okno Narzędzia pakietu SDK z opcją NDK (obok siebie)
Kliknij OK.
Okno dialogowe z informacją, ile miejsca na dysku zużywa pakiet NDK.
Kliknij OK.
Po zakończeniu instalacji kliknij Zakończ.
Twój projekt automatycznie synchronizuje plik kompilacji i wykonuje kompilację. Wyeliminuj wszystkie występujące błędy.
Skonfiguruj konkretną wersję CMake
SDK Manager zawiera rozwidloną wersję CMake 3.6.0 i wersję 3.10.2. Projekty, które nie mają określonej wersji CMake, są tworzone przy użyciu CMake 3.10.2. Aby ustawić wersję CMake, do pliku build.gradle
modułu dodaj ten kod:
Odlotowe
android { ... externalNativeBuild { cmake { ... version "cmake-version" } } }
Kotlin
android { ... externalNativeBuild { cmake { ... version = "cmake-version" } } }
Jeśli chcesz użyć wersji CMake, która nie jest uwzględniona przez Menedżera SDK, wykonaj te czynności:
- Pobierz i zainstaluj CMake z oficjalnej witryny CMake.
- Określ wersję CMake, której Gradle ma używać w pliku
build.gradle
modułu. Dodaj ścieżkę instalacji CMake do zmiennej środowiskowej
PATH
lub umieść ją w plikulocal.properties
projektu, jak pokazano w przykładzie. Jeśli Gradle nie może znaleźć wersji CMake określonej w plikubuild.gradle
, pojawi się błąd kompilacji.# If you set this property, Gradle no longer uses PATH to find CMake. cmake.dir = "path-to-cmake"</pre>
Jeśli na Twojej stacji roboczej nie masz jeszcze zainstalowanego systemu kompilacji Ninja, wejdź na oficjalną stronę Ninja, pobierz i zainstaluj najnowszą wersję Ninja dostępną dla Twojego systemu operacyjnego. Pamiętaj, aby do zmiennej środowiskowej
PATH
dodać też ścieżkę instalacji usługi Ninja.
Zainstaluj konkretną wersję pakietu NDK
Aby zainstalować konkretną wersję pakietu NDK, wykonaj następujące czynności:
Po otwarciu projektu kliknij Narzędzia > Menedżer SDK.
Kliknij kartę Narzędzia SDK.
Zaznacz pole wyboru Pokaż szczegóły pakietu.
Zaznacz pole wyboru NDK (obok siebie) i pola wyboru pod nim odpowiadające wersjom NDK, które chcesz zainstalować. Android Studio instaluje wszystkie wersje pakietu NDK w katalogu
android-sdk/ndk/
.Rysunek 2. Okno Narzędzia SDK z opcjami NDK (obok siebie)
Kliknij OK.
Okno dialogowe z informacją o ilości miejsca wykorzystywanego przez pakiety NDK.
Kliknij OK.
Po zakończeniu instalacji kliknij Zakończ.
Twój projekt automatycznie synchronizuje plik kompilacji i wykonuje kompilację. Wyeliminuj wszystkie występujące błędy.
Skonfiguruj w każdym module wersję NDK, której chcesz używać. Jeśli używasz Androida Studio 3.6 lub nowszego i nie określisz wersji, wtyczka Androida do obsługi Gradle wybierze wersję, z którą jest zgodna.
Skonfiguruj określone wersje NDK w projekcie
Skonfigurowanie wersji NDK w projekcie może być konieczne, jeśli spełniony jest jeden z tych warunków:
- Twój projekt jest dziedziczony i musisz użyć określonych wersji NDK i wtyczki Androida do obsługi Gradle (AGP). Więcej informacji znajdziesz w artykule o konfigurowaniu 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 plikubuild.gradle
modułu, jak pokazano w tym przykładowym kodzie.Odlotowe
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
Przed opublikowaniem każda wersja AGP jest dokładnie testowana przy użyciu najnowszej stabilnej wersji NDK w danym momencie. Ta wersja NDK jest używana do kompilowania projektów, jeśli nie określisz wersji NDK w pliku build.gradle
. Domyślna wersja NDK dla różnych wersji AGP jest opisana w informacjach o wersji AGP i w informacjach o poprzednich wersjach AGP.