Per compilare ed eseguire il debug del codice nativo per la tua app, hai bisogno dei seguenti componenti:
- Android Native Development Kit (NDK): un insieme di strumenti che ti consente di utilizzare il codice C e C++ con Android.
- CMake: uno strumento di compilazione esterno che funziona insieme a Gradle per creare la libreria nativa. Non hai bisogno di questo componente se prevedi di utilizzare solo ndk-build.
- LLDB: il debugger utilizzato da Android Studio per eseguire il debug del codice nativo. Per impostazione predefinita, LLDB verrà installato insieme ad Android Studio.
Questa pagina descrive come installare questi componenti automaticamente o utilizzando
Android Studio o lo strumento sdkmanager per scaricarli e installarli manualmente.
Installare automaticamente NDK e CMake
Il plug-in Android per Gradle 4.2.0 e versioni successive può installare automaticamente NDK e CMake richiesti la prima volta che crei il progetto, se le relative licenze sono state accettate in anticipo. Se hai già letto e accettato i termini di licenza, puoi accettare in anticipo le licenze negli script con il seguente comando:
yes | ${sdk}/cmdline-tools/latest/bin/sdkmanager --licenses
Installare NDK e CMake
Quando installi NDK, Android Studio seleziona l'ultima versione disponibile. Per la maggior parte dei progetti, l'installazione di questa versione predefinita di NDK è sufficiente.
Tuttavia, se il tuo progetto richiede una o più versioni specifiche di NDK, puoi
scaricare e configurare versioni specifiche. In questo modo, puoi garantire build riproducibili tra progetti che dipendono ciascuno da una versione specifica di NDK. Android Studio installa tutte le versioni di NDK nella
android-sdk/ndk/ directory.
Per installare CMake e NDK predefinito in Android Studio:
Con un progetto aperto, fai clic su Strumenti > SDK Manager.
Fai clic sulla scheda SDK Tools.
Seleziona le caselle di controllo NDK (Side by side) e CMake.
Figura 1. La finestra SDK Tools che mostra l'opzione NDK (Side by side)
Fai clic su OK.
Una finestra di dialogo ti indica la quantità di spazio occupata dal pacchetto NDK sul disco.
Fai clic su OK.
Al termine dell'installazione, fai clic su Fine.
Il progetto sincronizza automaticamente il file di build ed esegue una build. Risolvi eventuali errori.
Configurare una versione specifica di CMake
SDK Manager include la versione 3.6.0 di
CMake e la versione 3.10.2. I progetti che non impostano una
versione specifica di CMake vengono creati con CMake 3.10.2. Per
impostare la versione di CMake, aggiungi quanto segue al file build.gradle del modulo:
Groovy
android { ... externalNativeBuild { cmake { ... version "cmake-version" } } }
Kotlin
android { ... externalNativeBuild { cmake { ... version = "cmake-version" } } }
Se vuoi utilizzare una versione di CMake non inclusa in SDK Manager:
- Scarica e installa CMake dal sito web ufficiale di CMake.
- Specifica la versione di CMake che vuoi che Gradle utilizzi nel file
build.gradledel modulo. Aggiungi il percorso all'installazione di CMake alla variabile di ambiente
PATHo includilo nel filelocal.propertiesdel progetto, come mostrato. Se Gradle non riesce a trovare la versione di CMake specificata nel filebuild.gradle, riceverai un errore di build.# If you set this property, Gradle no longer uses PATH to find CMake. cmake.dir = "path-to-cmake"</pre>Se non hai già installato il sistema di build Ninja sulla tua workstation, vai al sito web ufficiale di Ninja, scarica e installa l'ultima versione di Ninja disponibile per il tuo sistema operativo. Assicurati di aggiungere anche il percorso all'installazione di Ninja alla tua
PATHvariabile di ambiente.
Installare una versione specifica di NDK
Per installare una versione specifica di NDK:
Con un progetto aperto, fai clic su Strumenti > SDK Manager.
Fai clic sulla scheda SDK Tools.
Seleziona la casella di controllo Mostra dettagli pacchetto.
Seleziona la casella di controllo NDK (Side by side) e le caselle di controllo sottostanti che corrispondono alle versioni di NDK che vuoi installare. Android Studio installa tutte le versioni di NDK nella
android-sdk/ndk/directory.
Figura 2. La finestra SDK Tools che mostra le opzioni NDK (Side by side)
Fai clic su OK.
Una finestra di dialogo ti indica la quantità di spazio occupata dai pacchetti NDK.
Fai clic su OK.
Al termine dell'installazione, fai clic su Fine.
Il progetto sincronizza automaticamente il file di build ed esegue una build. Risolvi eventuali errori.
Configura ogni modulo con la versione di NDK che vuoi che utilizzi. Se utilizzi Android Studio 3.6 o versioni successive, se non specifichi la versione, il plug-in Android per Gradle sceglie una versione nota per essere compatibile.
Configurare versioni specifiche di NDK nel progetto
Potresti dover configurare la versione di NDK nel tuo progetto se si verifica una delle seguenti condizioni:
- Il progetto è ereditato e devi utilizzare versioni specifiche di NDK e del plug-in Android per Gradle (AGP). Per saperne di più, consulta Configurare NDK per il plug-in Android per Gradle.
Hai installato più versioni di NDK e vuoi utilizzarne una specifica one. In questo caso, specifica la versione utilizzando la
android.ndkVersionproprietà nel filebuild.gradledel modulo, come mostrato nel seguente esempio di codice.Groovy
android { ndkVersion "major.minor.build" // e.g., ndkVersion "21.3.6528147" }
Kotlin
android { ndkVersion = "major.minor.build" // e.g., ndkVersion "21.3.6528147" }
Versione NDK predefinita per versione AGP
Prima del rilascio, ogni versione di AGP viene testata a fondo con l'ultima release stabile di NDK
disponibile in quel momento. Questa versione di NDK viene utilizzata per creare i progetti se non ne specifichi una nel build.gradle file. La versione NDK predefinita
per le diverse versioni di AGP è documentata nelle
note di rilascio di AGP e nelle
note di rilascio precedenti di AGP.